在C#中使用xPath获取node属性的值

时间:2012-01-10 13:48:55

标签: c# asp.net .net xml xpath

如果我有以下xml文档:

<xml>
<data>
<dataset name="X"></dataset>
</data>
</xml>

如何在c#中使用Xpath来检索name属性的值(即X)

3 个答案:

答案 0 :(得分:3)

  

如何在c#中使用Xpath来检索name属性的值   (即X)

此XPath表达式

/xml/data/dataset/@name 

选择所需属性 - 属于name元素的名为dataset的所有属性,该元素是data元素的子元素,该元素是XML的顶级元素的子元素文档。

但是,您希望获得 属性的值 - 而不是节点本身

此XPath表达式

string(/xml/data/dataset/@name) 
评估时

生成所需的字符串值

在C#中使用 XPathNavigator.Evaluate() 方法评估上面的表达式。

答案 1 :(得分:1)

使用此XPath:

xml/data/dataset/@name

答案 2 :(得分:0)

使用此XPath表达式:

xml/data/dataset

这将检索数据集节点。之后,您可以使用C#工具从节点中检索属性name