0

我已经给出了 XML 文档:

<root>
   <element xsi:nil="true" />
<root>

稍后在代码中,元素被更新为:

<root>
  <element xsi:nil="true">some data</element>
</root>

不,我尝试将元素反序列化为“元素”属性为空的对象。我究竟做错了什么?

这是我用来反序列化的 C# 代码:

XmlSerializer reader = new XmlSerializer(typeof(MyObject));
StreamReader srFile = new StreamReader(strFilePath);
MyObject obj = (MyObject)reader.Deserialize(srFile);

[Serializable]
public class My Object
{
  [XmlElement(IsNullable = true)]
  public string Element {get; set;}
}
4

1 回答 1

0

在设置值之前,我能够执行 nodeName.RemoveAttribute("xsi:nil") 。似乎在设置元素值时应该有一种方法可以做到这一点,因为元素的值将不再为空。

于 2016-08-26T22:42:59.143 回答