XPathNodeIterator当前值仅适用于父级



我是XPath的新手。

使用C#,我试图读取具有一个父节点和多个子节点的XML文件

使用XPathNavigator,我在根/父节点上进行选择,并将该值分配给XPathNodeIteratorXPathNodeIterator ni = _xpathNavigator.Select(theTag);

然后我转到下一个当我使用ni.当前值

我从Parent以及Child1和Child2 获得文本值

我想得到的是Parent only 的价值

OuterText给出了类似的结果。

有人知道如何做到这一点吗?

我假设您有一些xml,例如:

<root>
  <outer>
    outerValue
    <inner1>innerValue1</inner1>
    <inner2>innerValue2</inner2>
  </outer>
</root>

并且您看到"outerValueinnerValue1inerValue2"作为/eouter的返回值。

我不相信对象上有任何属性会单独为您提供outerValue。显然,您可以遍历子节点,并从concat'd字符串中删除它们的值,但这太可怕了。

可能最好在xml中添加一个新的子节点,例如

<root>
  <outer>
    <value>outerValue</value>
    <inner1>innerValue1</inner1>
    <inner2>innerValue2</inner2>
  </outer>
</root>

相关内容

最新更新