我需要使用序列化来创建嵌套的Xml。我有两个列表中的数据必须生成由Number过滤的嵌套xml。嵌套的XML序列化C#
名单:
List<Person> personList = new List<Person>();
personList.Add(new Person{
Number = 1,
Name = "Dean"
});
personList.Add(new Person{
Number = 2,
Name = "Mike"
});
List<Home> homeList= new List<Home>();
homeList.Add(new Home{
Number = 2,
City= "Paris",
State = "France"
});
homeList.Add(new Home{
Number = 1,
City= "London",
State = "England"
});
所以,下次我有我使用的序列化类:
public class CreateXML
{
[XElement(ElementName = "Home")]
List<Home> homeList= new List<Home>();
[XElement(ElementName = "Person")]
List<Person> personList = new List<Person>();
}
方法创建XML:
public void Serialize(CreateXML list)
{
XmlSerializer serializer = new XmlSerializer(typeof(CreateXML));
using (TextWriter writer = new StreamWriter(@"D:\XmlTEST.txt"))
{
serializer.Serialize(writer, list);
}
}
现在首先生成一个XML文件与所有个人数据,然后与家庭数据。
实际输出:
<Person>
<number>1<number>
<name>Dean</name>
</Person>
<Person>
<number>2<number>
<name>Mike</name>
</Person>
<Home>
<number>1</number>
<city>London</city>
<state>England</state>
</Home>
<number>2</number>
<city>Paris</city>
<state>London</state>
</Home>
通缉输出继电器:
<Person>
<number>1<number>
<name>Dean</name>
<Home>
<number>1</number>
<city>London</city>
<state>England</state>
</Home>
</Person>
<Person>
<number>2<number>
<name>Mike</name>
<Home>
<number>2</number>
<city>Paris</city>
<state>France</state>
</Home>
</Person>
有什么建议?
期望输出和实际输出之间有什么区别? – CodeCaster
如果你想要在输出xml结构的Person内部有一个元素Home,你需要添加一个类型为Home的字段给Person类。或者与你卡住的东西? – Fragment