我有一个可序列化的类
[XmlRoot("p")]
public class BatchField
{
private string _type;
private string _value;
[XmlAttribute("type")]
public string Type
{
get { return _type; }
set { _type = value; }
}
[XmlAttribute("value")]
public string Value
{
get { return _value; }
set { _value = value; }
}
}
[XmlRoot("Batch")]
public class Batch
{
private Collection<BatchField> _p;
[XmlElement]
public Collection<BatchField> P
{
get { return _p; }
set { _p = value; }
}
public Batch()
{
_p = new Collection<BatchField>();
}
}
我能够序列化和序列化它。在序列化后,它生成以下XML。这个XML很好,并且能够成功地对它进行序列化。
<?xml version="1.0" encoding="utf-8"?>
<Batch>
<P type="Test" value="113" />
<P type="Test1" value="113" />
<P type="Test2" value="113" />
<P type="Test3" value="113" />
<P type="Test4" value="113" />
<P type="Test5" value="113" />
</Batch>
现在我的问题是
我想让这个P
动态化。在某些情况下,它可以是Scanner
,或者在某些情况下可以是Codec
。如果我改变我的批次类,我将能够对这个类进行DE序列化,没有任何问题。但是我希望用相同的类结构来做...命名没有变化......有可能吗?或者我的方向错了?如果有可能请提供一些提示......
摘要
我希望在以下给定批次类的XML结构下进行DE序列化。
<?xml version="1.0" encoding="utf-8"?>
<Batch>
<Scanner type="Test" value="113" />
<Scanner type="Test1" value="113" />
<Scanner type="Test2" value="113" />
<Scanner type="Test3" value="113" />
<Scanner type="Test4" value="113" />
<Scanner type="Test5" value="113" />
</Batch>
我对这个概念有点新鲜。
先谢谢 SB