我有一个XML文档,看起来像这样:C#XML和LINQ
<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添加新人时,我正在编写一个采用person对象的函数,并且该person对象具有一组children对象(可能为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; }
你能举一个例子吗?所涉及的类和他们所获得的简单,公共字符串成员或儿童和人类。 – mrasmussen 2012-08-16 15:48:47
@ user1048323:您的评论不清楚,但请在您的问题中包括相关课程。特别是,因为“孩子”是复数形式,所以我希望孩子的某种*收藏是人的财产,但是你没有解释什么是可用的。 – 2012-08-16 15:51:19
'public class Person {public List childList;公共字符串名称;公共字符串地址;公共字符串jobTitle; } –
mrasmussen
2012-08-16 15:53:34