我正在使用XmlSerializer
将类序列化为XML。该类包含一些布尔属性,如下所示进行序列化:
public bool Boolean1;
public bool Boolean2;
<Boolean1>true</Boolean1>
<Boolean2>false</Boolean2>
我希望生成的XML看起来像这样:
<Boolean1/>
也就是说,真正的布尔值将显示为空标记,并且根本不会出现假布尔值。我可以为两个布尔值添加一个ShouldSerializeX
方法,以便在布尔值为假的情况下使元素消失,但是如果元素为真,我如何让标签名称没有内容?
此外,是否存在某种[XmlIgnoreIfNull]
或[XmlIgnoreIfDefault]
属性会导致大多数ShouldSerialize
方法变得多余?