获取具有相同名称的所有属性

时间:2014-09-08 15:32:36

标签: c# xpath

我使用XDocument并且我需要解析我的XML文件以检索具有相同名称事件的所有属性,如果其节点的名称不同于另一个。 例如,对于这个XML:

<document>
    <person name='jame'/>
    <animals>
          <dog name='robert'/>
    </animals>
</document>

我想要检索名为&#39; name&#39;。

的所有属性

我可以使用一个请求XPath执行此操作,还是需要解析每个节点以查找该属性?

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

XPath表达式

//@name

将选择名为name的所有属性,无论它们出现在何处。

顺便说一句,解析&#39;在XPath进入图片之前,XML文档就会发生这种情况。所以当你说&#34;我是否需要解析每个节点时,我认为这并不是你的意思。在运行XPath查询之前,通常已经解析了整个文档。但是,我不确定你的意思是什么,而不是解析&#39;。可能类似于&#34;我是否需要访问每个元素&#34;找到那些属性?在这种情况下,答案是否定的,除非在一些模糊的依赖于实现的意义上,这对你没有任何影响。