を働いていない要素を無視するXmlAttributeOverridesを使用した:私は唯一のシリアル化の要素のいくつかを無視するように次のことをやっている
public class Parent
{
public SomeClass MyProperty {get;set;}
public List<Child> Children {get;set;}
}
public class Child
{
public SomeClass MyProperty {get;set;}
}
public class SomeClass
{
public string Name {get;set;}
}
XmlAttributes ignore = new XmlAttributes()
{
XmlIgnore = true
};
XmlAttributeOverrides overrides = new XmlAttributeOverrides();
overrides.Add(typeof(SomeClass), "MyProperty", ignore);
var xs = new XmlSerializer(typeof(MyParent), overrides);
クラスのプロパティはXmlElement
属性を表示できません。プロパティ名は、overrides.Add
に渡される文字列にも一致します。
しかし、上記はプロパティを無視しておらず、まだシリアル化されています。
私には何が欠けていますか?
コード例では、 'MyParent'は' Parent'ですか? – dbc