c# xml序列化不写null

2024-01-01

当我序列化一个包含可为 null DateTime 的 C# 对象时,有没有办法将 null 值保留在 xml 文件之外,而不是让

 <EndDate d2p1:nil="true" xmlns:d2p1="http://www.w3.org/2001/XMLSchema-instance" />

您可以使用Specified扩展属性以省略空值(或就此而言的任何其他值)。基本上,使用单词创建与序列化属性同名的另一个属性Specified作为布尔值添加到末尾。如果Specified财产是true,然后它所控制的属性被序列化。否则的话,如果是false,另一个属性完全不在 xml 文件中:

[XmlElement("EndDate")]
public DateTime? EndDate { get; set; }
[XmlIgnore]
public bool EndDateSpecified { get {
    return (EndDate != null && EndDate.HasValue); } }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c# xml序列化不写null 的相关文章

随机推荐