SelectNodes没有作用于Element

Ral*_*ton 6 .net xml xpath

如果我在XmlElement上调用SelectNodes,并传递XPath查询,如下所示:

XmlNodeList nodes = xmlElement.SelectNodes("// OtherNode");

节点列表将用于文档中的所有OtherNode元素,而不仅仅是来自xmlElement的元素.

我似乎记得这是设计上的,并且有充分的理由,但我不记得那个好理由是什么,也不记得如何绕过它.

bru*_*nde 10

只需添加一个dot到开头即可xpath.所述dot选择当前节点:

XmlNodeList nodes = xmlElement.SelectNodes(".//OtherNode");
Run Code Online (Sandbox Code Playgroud)

  • 因为他想考虑所有的后代,而不仅仅是直接的孩子? (3认同)
  • 为什么不只是"OtherNode"? (2认同)