我有这样的XML
<root>
<content>
....
</content>
<index>
....
</index>
<keywords>
....
</keywords>
</root>
但我需要选择just和nodes。
<content>
....
</content>
<index>
....
</index>
我发现了如何只选择一个节点。
XElement Content = new XElement("content", from el in xml.Elements() select el.Element("content").Elements());
如何获得两个节点?
答案 0 :(得分:6)
var elements =
from element in xml.Root.Elements()
where element.Name == "content" ||
element.Name == "index"
select element;
var newContentNode = new XElement("content", elements);
答案 1 :(得分:1)
加载xml文件后,您可以通过以下方式获取所有内容节点:
var cons = from con in xmlFile.Descendants("content");
同样可以将索引节点作为:
var idxs = from idx in xmlFile.Descendants("index")
我认为您不能使用一个查询字符串查询两个节点。
答案 2 :(得分:1)
使用lambda:
var elements = document
.Descendants()
.Where(element => element.Name == "content" || element.Name == "index");