Подтвердить что ты не робот

Как определить, содержит ли XElement.Elements() node с определенным именем?

Например, для следующего XML

 <Order>
  <Phone>1254</Phone>
  <City>City1</City>
  <State>State</State>
 </Order>

Мне бы хотелось узнать, содержит ли XElement "Город" Node или нет.

4b9b3361

Ответ 1

Просто используйте другую перегрузку для Элементы.

bool hasCity = OrderXml.Elements("City").Any();

Ответ 2

Прошло некоторое время, так как я сделал XLinq, но здесь идет мой WAG:

from x in XDocument
where x.Elements("City").Count > 0
select x

;

Ответ 3

Дэвид лучший, но если вы хотите, вы можете написать свой собственный предикат, если вам нужна некоторая пользовательская логика OrderXML.Elements("City").Exists(x=>x.Name =="City")