Запрос XElement с помощью Linq - углубление XElement - PullRequest
2 голосов
/ 15 июня 2011

У меня есть документ XML, как показано ниже:

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

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

Я хочу выбрать все элементы уровня 3, в XPath я бы сделал root/level1/level2/level3, но как мне это сделать, используя LINQ?

Ответы [ 2 ]

6 голосов
/ 15 июня 2011
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 голосов
/ 15 июня 2011

Просто используйте. Потомки

Пример

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...