使用Linq查询XElement - 获取深层的XElement

3

我有一个XML文档,如下所示:

<root>
  <level1>
    <level2>
      <level3>
       .....
      </level3>
      <level3>
       .....
      </level3>

    </level2>
  </level1>
</root>

我想选择所有的level3元素,在XPath中可以这样做:root/level1/level2/level3,但是如何使用LINQ做到呢?

2个回答

7
var elements = document.Descendants("level3").ToList();

或者,如果您需要按照精确路径进行操作

var elements = document.Element("root").Element("level1").Element("level2").Elements("level3").ToList();

或者使用XPath,但仍将使用XDocument
var elements = document.XPathSelectElements("root/level1/level2/level3").ToList();

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接