C# 获取具有相同名称的所有属性
我使用的是C# 获取具有相同名称的所有属性,c#,xpath,C#,Xpath,我使用的是XDocument,如果某个属性的节点名称不同,我需要解析XML文件以检索具有相同名称事件的所有属性。 例如,对于此XML: <document> <person name='jame'/> <animals> <dog name='robert'/> </animals> </document> 我想检索名为“name”的所有属性 我可以用一个请求XPath来实现
XDocument
,如果某个属性的节点名称不同,我需要解析XML文件以检索具有相同名称事件的所有属性。
例如,对于此XML:
<document>
<person name='jame'/>
<animals>
<dog name='robert'/>
</animals>
</document>
我想检索名为“name”的所有属性
我可以用一个请求XPath来实现这一点,还是需要解析每个节点来找到这些属性
谢谢你的帮助 XPath表达式
//@name
将选择名为name
的所有属性,无论它们出现在何处
顺便说一句,“解析”是在XPath出现之前发生在XML文档上的事情。所以当你说“我需要解析每个节点吗”,我想这并不是你真正的意思。在运行XPath查询之前,通常已解析整个文档。然而,我不确定你说的“解析”是什么意思。可能类似于“我是否需要访问每个元素”来查找这些属性?在这种情况下,答案是否定的,除非在某种模糊的依赖于实现的意义上,这对您没有任何影响。谢谢!!它工作得很好。你是对的。我的意思是“查看每个节点”,而不是“重新解析整个文件”。