例如,如果我有一个包含两个对象的列表,并且我想使用Xelement将它们放入XML文件并尝试遍历它将第二个对象项放入第一个Xelement名称的对象,因为它们是具有相同的Xelement标记名。
我怎样才能告诉Xelement它在某种情况下需要是唯一的?因此,它不会将第二个对象放在第一个人标签中,而是放在第二个对象中。
List<People> people -> has two items
foreach (var person in people)
{
xmlDoc.Element("people").Add(new XElement("person"............
}
XML输出示例:
<people>
<person></person>
<person></person>
</people>
<people>
</people>
答案 0 :(得分:1)
问题不是很清楚,但可能是你在找这样的东西?
foreach (var p in people)
{
XElement xElement = new XElement("people");
foreach (var person in p)
{
xElement.Add(new XElement("person")); // add other elements, attributes etc...,
}
xDoc.Add(xElement);
}
答案 1 :(得分:1)
别介意我找到了答案。
使用Element将为您提供他在XML文档中可以找到的第一个元素。
使用Elements("people").Last().Element("person").Add
将为您提供该系列中的最后一个。当我循环通过对象时,最后一个将始终是那个时刻的那个。
非常感谢。