如何确定XElement.Elements()是否包含具有特定名称的节点?

Mal*_*har 25 c# xml linq .net-3.5

例如,对于以下XML

 <Order>
  <Phone>1254</Phone>
  <City>City1</City>
  <State>State</State>
 </Order>
Run Code Online (Sandbox Code Playgroud)

我可能想知道XElement是否包含"City"节点.

Amy*_*y B 56

只需使用Elements的其他重载.

bool hasCity = OrderXml.Elements("City").Any();
Run Code Online (Sandbox Code Playgroud)

  • 或者使用Descendants("MyNode").Any()如果​​你不关心它在树中的位置. (2认同)