我有以下xml文件
<?xml version="1.0" encoding="utf-8"?>
<root>
<file_1>
<file_name Value="" />
<date Value="" />
<information>
<page1>
<percentage Value="90%" />
<profit Value="50%" />
<total Value="$1500" />
</page1>
</information>
</file_1>
</root>
并且我想序列化该xml,但是我希望page1节点中的所有子节点都可以像属性一样进行处理,例如:
var xmlInfo = new List<xmlClass>();
var FieldName = xmlInfo[0].FieldName; // the value of FieldName should be percentage
var data = xmlInfo[0].Value; // the value of data should be 90%
换句话说,我只对最深的节点感兴趣,可以将它们序列化为一个对象。
我有一个序列化方法,但我不知道如何构建该类。
public static T Deserialize<T>(XDocument doc)
{
XmlSerializer xmlSerializer = new XmlSerializer(typeof(T));
using (var reader = doc.Root.CreateReader())
{
return (T)xmlSerializer.Deserialize(reader);
}
}
使用带有字典的xml linq: