【发布时间】:2010-06-18 08:12:29
【问题描述】:
我有这个 XML:
<rootCategories>
<category id="1">
<category id="2">
<category id="3">
<category id="4" />
<category id="5" />
<category id="6" />
</category>
<category id="7" />
</category>
</category>
</rootCategories>
我有这个 LINQ 语句:
int count = doc.XPathSelectElements("//category").Elements().Count();
我想要的是所有“类别”元素,基本上,平展成一个数组,然后我可以遍历。
问题是返回的计数值(如果取消,返回的数组)表明没有返回最顶层的类别元素。在这种情况下,我会返回 6 个“类别”元素,而不是 7 个。
我使用的是从 [this page] 学到的 XPath( http://www.developer.com/xml/article.php/10929_3383961_1/NET-and-XML-XPath-Queries.htm)。
有人能告诉我为什么以及如何解决这个问题吗? XPath 查询有问题吗?
【问题讨论】: