Ste*_*fan 5 c# xml serialization xml-serialization deserialization
我正在编写ac #project,我正在尝试反序列化具有int []类型字段的对象,并且我想以另一种方式进行反序列化.
说我有一节课:
class Player
{
public string Name;
public int[] Spells;
}
Run Code Online (Sandbox Code Playgroud)
和一个xml文件,我从中反序列化类Player的实例:
<Player>
<Name>John</Name>
<Spells>
<int>1</int>
<int>5</int>
<int>9</int>
</Spells>
</Player>
Run Code Online (Sandbox Code Playgroud)
问题是我不希望xml文件看起来像那样,我希望它更像这样:
<Player>
<Name>John</Name>
<Spells>1 5 9</Spells>
</Player>
Run Code Online (Sandbox Code Playgroud)
我正在使用XmlSerializer,它只在第一个xml读取表单时才反序化字段Spells.我想知道它是否像一个简单字段一样反序列化一个int数组.
其中一种方法是创建另一个属性,该属性将空间分隔集用于序列化目的.例如,
class Player
{
public string Name;
[XmlIgnore]
public int[] Spells;
[XmlElement("Spells")
public string SpellsString
{
get
{
// array to space delimited string
}
set
{
// string to array conversion
}
}
}
Run Code Online (Sandbox Code Playgroud)