我有一个非常具体的问题,即将xml文件映射到对象。
这是XML示例文件:
<spyce>
<reference name="test">
<Data id="1">10</Data>
<Data id="2">20</Data>
</reference>
</Spyce>
以下是我的映射类:
[Serializable]
[XmlRoot("spyce")]
public class Spyce
{
private Reference reference;
[XmlElement("reference")]
public Reference Reference
{
get { return reference; }
set { reference = value; }
}
}
[XmlRoot("reference")]
public class Reference
{
[XmlAttribute("name")]
public string name;
[XmlArray]
private List<Data> dataList;
[XmlElement("data")]
public List<Data> DataList
{
get { return dataList; }
set { dataList = value; }
}
}
public class Data
{
[XmlAttribute("id")]
public string id;
private int dataValue;
[XmlElement("data")]
public int DataValue
{
get { return dataValue; }
set { dataValue= value; }
}
}
序列化顺利,我得到一个Spyce对象。在此对象中是具有变量名称和列表DataList的Reference对象。这就是问题=&gt;列表中的Data对象具有变量id,但DataValue始终为0。
我该如何处理?
最诚挚的问候。
穗
答案 0 :(得分:0)
只需将属性更改为XmlText:
[XmlText(Type=typeof(int))]
public int DataValue