如果我在XmlElement上调用SelectNodes,并传递XPath查询,如下所示:
XmlNodeList nodes = xmlElement.SelectNodes(“// OtherNode”);
节点列表将用于文档中的所有OtherNode元素,而不仅仅是来自xmlElement的元素.
我似乎记得这是设计上的,并且有充分的理由,但我不记得那个好理由是什么,也不记得如何绕过它.
只需在xpath的开头添加一个点即可.点选择当前节点:
XmlNodeList nodes = xmlElement.SelectNodes(".//OtherNode");