我有两个应用程序:X和Y. X有一组变量(存储在类的对象中),必须转移到Y.我打算使用XML文件作为存储在磁盘上的记录,两个应用程序都可以通过名称访问它。 X将数据写入该XML文件,Y读取它。
我以为我可以使用XmlSerializer(System.Xml.Serialization)来完成此任务。使用XmlSerializer,我可以创建一个如下所示的XML文件:
<MonsterCollection>
<Monsters>
<Monster name="a">
<Health>5</Health>
</Monster>
<Monster name="b">
<Health>3</Health>
</Monster>
</Monsters>
</MonsterCollection>
当Y读取此XML文件时,它不知道变量 Health 的实际数据类型。因此,必须在X和Y中定义原始类。是否有办法将数据类型存储在XML文件中?最后,我想做到这样的事情:
<Monster name="a" type="" help="This is a monster">
<var name="Health" type="uint16" val="5" help="Healthiness of this monster" />
</Monster>
<Monster name="b" type="" help="This is a monster">
<var name="Health" type="uint16" val="3" help="Healthiness of this monster" />
</Monster>
答案 0 :(得分:0)
您可以使用下面提到的代码
public class Monster
{
[XmlAttribute("name")]
public string name {get;set;}
[XmlAttribute("type")]
public string type {get;set;}
[XmlAttribute("val")]
public int val { get; set; }
}
for ref serialize-object-to-element