7

可能重复:
XML 序列化和空值 - C#
更改 XmlSerializer 序列化空元素的方式

如何使 XmlSerializer 为具有空值的字符串属性存储空标签,而不是跳过此属性?

4

1 回答 1

6

你的意思是你想要这个:

<parent>
    <child1>Hello World</child1>
    <child2 />
</parent>

代替

<parent>
    <child1>Hello World</child1>
</parent>

您的类应如下所示: 序列化ShouldSerializePropertyName程序根据定义(如果存在)调用方法以确定是否应序列化属性(如 Windows 窗体设计器)。

public class Parent
{
    [XmlElement("Child1")]
    public string Child1 { get; set; }

    [XmlElement("Child2")]
    public string Child2 { get; set; }

    public bool ShouldSerializeChild2() { return true; }

}
于 2012-05-24T09:50:20.887 回答