次のような XML があります。
<root>
<base type="a">
<common>1</common>
<concreteA>one</concreteA>
</base>
<base type="b">
<common>2</common>
<concreteB>two</concreteB>
</base>
</root>
そして、このようなクラス:
public class Root
{
public List<Base> Bases { get; set; }
}
public class Base
{
public int Common { get; set; }
}
public class A : Base
{
public string ConcreteA { get; set; }
}
public class B : Base
{
public string ConcreteB { get; set; }
}
これをオブジェクトに逆シリアル化するにはどうすればよいですか? を使用して各ベース ノードの名前が異なる場合の方法について多くの投稿を見てきましたが、代わりに elements 属性にXmlArrayItemAttribute( ElementName, Type )]
基づいて選択する必要があります。type