2009-10-22 64 views

回答

2

使用XmlIgnore属性

5

使用XmlIgnoreAttribute做静态,因为别人劝你。

你也可以动态地做到这一点。假设你有一个可序列化的属性名称。然后执行以下操作:

[XmlIgnore] 
public bool NameSpecified { 
    get { 
     // your logic here 
    } 
} 

如果这个特殊的属性getter返回true,名称将被包含在输出XML文档中,否则将不被包括在内。 NameSpecified本身标有[XmlIgnore],因为您显然不想包含它。

0

从Azheglov关于“指定”后缀的评论开始,DefaultValue属性在序列化时也被考虑,如果它是默认值,则根本不会序列化该值。

相关问题