使用linq XML是否可以向现有节点添加新父? 拿这个XML摘录:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<items>
<book>
<title>Title 1</title>
<author>Author 1</author>
</book>
<book>
<title>Title 2</title>
<author>Author 2</author>
</book>
<car>
<model>Tesla</model>
</car>
</items>
是否可以添加新的父亲&#34;书籍&#34;像这样预订:
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<items>
<books>
<book>
<title>Title 1</title>
<author>Author 1</author>
</book>
<book>
<title>Title 2</title>
<author>Author 2</author>
</book>
</books>
<car>
<model>Tesla</model>
</car>
</items>
这不起作用,因为它正在克隆节点:
doc.Element("items").Add(new XElement("books",doc.Element("items").Elements("book")));
答案 0 :(得分:1)
您可以在新<book>
父节点下添加现有<items>
元素,从<books>
节点删除它们:
var books = doc.Element("items").Elements("book");
doc.Element("items").Add(new XElement("books", books));
books.Remove();