【问题标题】:XPathNodeIterator Current Value only for ParentXPathNodeIterator 当前值仅适用于父级
【发布时间】:2012-03-14 08:45:32
【问题描述】:

我是 XPath 的新手。

使用 C# 我正在尝试读取具有父节点和多个子节点的 XML 文件

使用 XPathNavigator,我在根/父级上执行选择并将此值分配给 XPathNodeIterator XPathNodeIterator ni = _xpathNavigator.Select(theTag);

然后我转到下一步 当我使用 ni.Current.Value

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

我想要得到的是 Parent only 的值

OuterText 给出了类似的结果。

有人知道如何让它工作吗?

【问题讨论】:

  • 如果您提供一个您正在处理的示例 xml,将会更容易理解您的问题。

标签: c# xml xpathnavigator xpathnodeiterator


【解决方案1】:

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

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

您将看到“outerValueinnerValue1innerValue2”作为 /outer 的返回值。

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

最好将新的子节点添加到您的 xml 中,例如。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-02
    • 1970-01-01
    相关资源
    最近更新 更多