C#XPathNavigator返回所有值的字符串而不是值

时间:2010-07-14 16:13:26

标签: c# xml xpath

我有XML文档,类似于

<X><Y><Values><double>1.0</double><double>2.0</double></Values>...

我想要获得这些价值观:

toXpath.MoveToRoot(); // the X node name could be different
toXpath.MoveToFirstChild(); // this should be Y

string q = "Y/Values";
foreach (XPathNavigator x in toXpath.Select(q))

在x.Value中我得到类似“1.02.0”

的内容

1 个答案:

答案 0 :(得分:1)

Y/Values

选择名为Values 的单个元素和元素Y的子元素,该元素是顶部元素X的子元素。

string q = "Y/Values";       
foreach (XPathNavigator x in toXpath.Select(q))

因为XPath表达式只选择一个节点,所以不需要foreach ...

In x.Value I get something like "1.02.0"

这正是你应该得到的。节点的值是其所有文本节点后代的串联。

很可能你想要:

Y/Values/double