我有一个看起来像这样的 XML 文档:
<people>
<person>
<name>mike</name>
<address>1 main st</address>
<jobTitle>SE</jobTitme>
<children>
<name>mary</name>
<age>5</age>
</childres>
</person>
<person>
<name>john</name>
<address>2 main st</address>
<jobTitle>SE</jobTitme>
</person>
</people>`
所以不是所有的人块和孩子块。很简单。当我通过 C# 向 XML 添加一个新人时,我正在编写一个函数,该函数接受一个人对象并且该人对象具有一组子对象(可能是 0 个或更多)。我在该函数中编写 linq 时遇到问题。我可以很容易地添加一个人对象,但有条件地添加 1 个或多个孩子很难。这是我到目前为止所拥有的:
doc.Element("People").Add(
new XElement("Person",
new XElement("Name", person.name),
new XElement("Address", person.address),
new XElement("jobTitle", person.jobTitle)))
如果孩子存在,我如何有条件地添加孩子?
public class person
{
public List<Child> childList;
public string name;
public string address;
public string jobTitle
}
public class child
{
public string name;
public int age;
}