Linq to XML - 获取具有特定子元素的元素

时间:2013-09-26 03:44:40

标签: linq linq-to-xml

使用LINQ to XML,如何获取具有命名子元素的所有元素的集合。

例如

;

<root>
  <Garage>
   <Car id="001">
    <Price PaymentType="Cash">$100</Price>
   </Car>
   <Car id="002">
    <Price PaymentType="Cash">$200</Price>
   </Car>
  <Car id="003">
  </Car>
 </Garage>
</root>

这将返回2个Car元素(#1和#2),因为它们具有Price元素。它不会返回Car#3,因为它没有价格元素。

一如既往地谢谢

1 个答案:

答案 0 :(得分:0)

假设您有一个名为doc的XDocument对象,并且已将示例xml加载到其中。你可以尝试这样的事情。

IEnumerable<XElement> elements = doc.Descendants("Garage").Elements().Where(e => e.Elements().Any());
相关问题