C# xml反序列化的右类结构
我需要将xml反序列化到C#类的帮助。我有以下xml结构:C# xml反序列化的右类结构,c#,asp.net,xml,serialization,C#,Asp.net,Xml,Serialization,我需要将xml反序列化到C#类的帮助。我有以下xml结构: DataResponse> <Data> <CFgroups> <CFgroup id="PRO" name="pro"> <CFgroup id="T692" name="T692"> <item>T692-002</item> <item>T692-003</
DataResponse>
<Data>
<CFgroups>
<CFgroup id="PRO" name="pro">
<CFgroup id="T692" name="T692">
<item>T692-002</item>
<item>T692-003</item>
<item>T692-004</item>
</CFgroup>
<CFgroup id="T693" name="T693">
<item>T693-001</item>
<item>T693-003</item>
<item>T693-004</item>
</CFgroup>
<CFgroup id="DESIGN" name="design">
<CFgroup id="UN101" name="UN101">
<item>UN101-01</item>
<item>UN101-02</item>
<item>UN101-03</item>
</CFgroup>
<CFgroup id="UN111" name="UN111">
<item>UN111-03</item>
</CFgroup>
</CFgroup>
</CFgroups>
</Data>
</DataResponse>
DataResponse>
T692-002
T692-003
T692-004
T693-001
T693-003
T693-004
UN101-01
UN101-02
UN101-03
UN111-03
和asp.net c#中的类:
公共类CFgroup
{
[XmlAttribute(“id”)]
公共字符串Id{get;set;}
[XmlAttribute(“名称”)]
公共字符串名称{get;set;}
[XmlElement(“CFgroup”)]
公共列表组{get;set;}
[XmlElement(“项目”)]
公共列表项{get;set;}
}
很好。现在,我想向“item”元素添加参数“available”,如:
<item available="10">T692-002</item>
<item available="13">T692-003</item>
<item available="17>T692-004</item>
T692-002
T692-003
我明白了。以下是解决方案:
public class CFgroup
{
[XmlAttribute("id")]
public string Id { get; set; }
[XmlAttribute("name")]
public string Name { get; set; }
[XmlElement("CFgroup")]
public List<CFgroup> Groups { get; set; }
[XmlElement("item")]
public List<Item> Items { get; set; }
}
public class Item
{
[XmlAttribute("available")]
public string Available { get; set; }
[XmlText]
public string Value { get; set; }
}
公共类CFgroup
{
[XmlAttribute(“id”)]
公共字符串Id{get;set;}
[XmlAttribute(“名称”)]
公共字符串名称{get;set;}
[XmlElement(“CFgroup”)]
公共列表组{get;set;}
[XmlElement(“项目”)]
公共列表项{get;set;}
}
公共类项目
{
[XmlAttribute(“可用”)]
可用的公共字符串{get;set;}
[XmlText]
公共字符串值{get;set;}
}
public class CFgroup
{
[XmlAttribute("id")]
public string Id { get; set; }
[XmlAttribute("name")]
public string Name { get; set; }
[XmlElement("CFgroup")]
public List<CFgroup> Groups { get; set; }
[XmlElement("item")]
public List<Item> Items { get; set; }
}
public class Item
{
[XmlAttribute("available")]
public string Available { get; set; }
[XmlText]
public string Value { get; set; }
}