XPathNavigator.ComparePosition(XPathNavigator) 方法

定义

将当前 XPathNavigator 的位置与指定的 XPathNavigator 的位置进行比较。

public:
 virtual System::Xml::XmlNodeOrder ComparePosition(System::Xml::XPath::XPathNavigator ^ nav);
public virtual System.Xml.XmlNodeOrder ComparePosition (System.Xml.XPath.XPathNavigator? nav);
public virtual System.Xml.XmlNodeOrder ComparePosition (System.Xml.XPath.XPathNavigator nav);
abstract member ComparePosition : System.Xml.XPath.XPathNavigator -> System.Xml.XmlNodeOrder
override this.ComparePosition : System.Xml.XPath.XPathNavigator -> System.Xml.XmlNodeOrder
Public Overridable Function ComparePosition (nav As XPathNavigator) As XmlNodeOrder

参数

nav
XPathNavigator

要针对其进行比较的 XPathNavigator

返回

XmlNodeOrder

XmlNodeOrder 值,表示两个 XPathNavigator 对象的相对位置。

注解

下表描述了 XmlNodeOrder 枚举。

XmlNodeOrder 说明
Before XPathNavigator 节点的当前节点在提供的 XPathNavigator当前节点之前。
After XPathNavigator 节点的当前节点位于提供的 XPathNavigator当前节点之后。
Same 这两 XPathNavigator 个对象位于同一节点上。
Unknown 节点位置不能在文档顺序中相互确定,也不能 null 指定为 XPathNavigator 参数。 如果两个节点驻留在不同的树中,则可能发生这种情况。

该方法ComparePosition的行为取决于XPathNodeTypeXPathNavigator当前定位在上的行为。 比较 XML 文档中的节点时,将应用以下规则:

  • Element 节点:这些节点按源文档的文档顺序返回。

  • Namespace 节点:这些节点可以按文档顺序返回,并且始终在父元素的节点之前 Attribute

  • Attribute 节点:这些节点可以按文档顺序返回。 它们始终在节点之后 Namespace 和父节点的任何子节点之前。

备注

有关 XPath 数据模型的详细信息以及每个节点类型的详细信息,请参阅 W3C XML 路径语言 (XPath) 建议的第 5 部分。

此方法对状态 XPathNavigator无效。

备注

IsSamePosition尽可能使用该方法,而不是ComparePosition方法。

适用于

另请参阅