I can't seem to figure out why this test doesn't pass
The test is:
given the following XML:
<?xml version="1.0" encoding="utf-8"?>
<foo>
<account>
1234567890
</account>
<deptCode>
ABCXYZ
</deptCode>
</foo>
and the following class:
class Foo {
[XmlElement(ElementName = "account", DataType = "normalizedString")]
string account;
[XmlElement(ElementName = "deptCode", DataType = "normalizedString"]
string deptCode;
}
when that XML is deserialized with:
XmlSerializer serializer = new XmlSerializer(typeof(Foo));
Foo myFoo = (Foo) serializer.Deserialize(xmlReader);
I get the following values:
Foo.account = "\r\n 1234567890 \r\n"
Foo.deptCode = "\r\n ABCXYZ \r\n"
instead of the expected
Foo.account = "1234567890"
Foo.deptCode = "ABCXYZ"
How can I make it so that the deserialization process gives me the expected results? I thought the DataType="normalizedString"
might do it, but it seems to have no effect, and when I use XmlReaderSettings.IgnoreWhitespace
, it just takes away the "\r" character, leaving me with "\n 1234567890"