c# - "all nodes exactly one below the base node?"的正确 XPath 是什么

标签 c# xml xpath

假设我不知道我的基节点或其子节点的名称,“所有节点恰好在基节点下一个?”的 XPath 语法是什么?

模式是一个 XmlNode,我有以下代码:

XmlNodeList kvpsList = pattern.SelectNodes(@"//");

这在我看来是正确的,但我得到以下异常:

   System.Xml.XPath.XPathException: Expression must evaluate to a node-set.

正确的语法是什么?

最佳答案

你要找的路径是

/*/*

// 不是有意义的 XPath 表达式,因为它是一个运算符。如果您编写类似 //element 的内容,它将匹配 XML 文档中任何位置名为 element 的每个元素,无论它在层次结构中有多深。

/*/* 表示“匹配层次结构中具有两层深度的每个节点”。

关于c# - "all nodes exactly one below the base node?"的正确 XPath 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/691225/

相关文章:

c# - 将所有者授予从另一个线程调用的 MessageBox

java - 如何从 Java 中的 XML 字符串中排除标签

xml - 有效地访问对象模型中的父元素

xpath - 如何在此tr中选择下一个td?

ruby - Nokogiri 识别页面上最大文本的策略?

c# - System.Threading.Timer 内部的方法

c# - 如何获得 C# WebBrowser 控件来显示 jpeg 文件(原始)?

java - 表中相关元素的 XPath

c# - 存储过程不是那么快吗?

java - JaxB 编码(marshal)拆收器覆盖文件内容