我已经使用“XSD.exe/c”命令行从 XSD 生成了类。生成了部分类,因此我通过添加具有相同名称的类来“完成”它们,这允许我添加其他属性。但是,每当我将数据序列化回 XML 文件时,都会包含这些属性的值。有谁知道如何防止这种情况,也许是通过属性?
非常感谢,
尼克希尔
最佳答案
[XmlIgnore]
public string Foo {get;set;}
实际上(仅出于完整性目的),您也可以通过其他两种基于名称的模式来做到这一点 - 在这种情况下您不会这样做 - 它们是为有条件地 在序列化期间包含数据,并且(在第二个示例中)区分“显式反序列化为默认值”与“不在反序列化源中”之间的歧义:
public bool ShouldSerializeFoo() {return false;}
或
[XmlIgnore]
public bool FooSpecified { get { return false;} set {} }
关于c# - 从通过 XSD.exe 生成的类加载的数据序列化回 XML 时排除特定属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4836325/