【发布时间】:2012-01-10 13:48:54
【问题描述】:
如果我有以下 xml 文档:
<xml>
<data>
<dataset name="X"></dataset>
</data>
</xml>
如何在 c# 中使用 Xpath 来检索 name 属性的值(即 X)
【问题讨论】:
如果我有以下 xml 文档:
<xml>
<data>
<dataset name="X"></dataset>
</data>
</xml>
如何在 c# 中使用 Xpath 来检索 name 属性的值(即 X)
【问题讨论】:
如何在 c# 中使用 Xpath 来检索 name 属性的值 (即 X)
这个 XPath 表达式:
/xml/data/dataset/@name
选择想要的属性——所有名为name 的属性属于dataset 元素,该元素是data 元素的子元素,而data 元素是XML 文档顶部元素的子元素。
但是,您想要获得 属性的值 ——而不是节点本身。
这个 XPath 表达式:
string(/xml/data/dataset/@name)
当评估时,产生想要的字符串值。
在 C# 中,使用 XPathNavigator.Evaluate() 方法计算上述表达式。
【讨论】:
使用这个 XPath:
xml/data/dataset/@name
【讨论】:
使用这个 XPath 表达式:
xml/data/dataset
这将检索数据集节点。之后,您可以使用 C# 工具从节点中检索属性 name。
【讨论】:
name 属性的元素,请使用@name 路径而不是我上面写的路径。