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 的行為取決於 XPathNodeType XPathNavigator 目前所在的 。 比較 XML 檔中的節點時,適用下列規則:

  • Element nodes:這些節點會以來源文件的檔順序傳回。

  • Namespace nodes:這些節點可以依檔順序傳回,而且一律在父元素的節點之前 Attribute

  • Attribute nodes:這些節點可以依檔順序傳回。 它們一律位於節點之後 Namespace ,以及父節點的任何子節點之前。

注意

如需 XPath 資料模型的詳細資訊,以及每個節點類型的詳細資料,請參閱 W3C XML 路徑語言 (XPath) 建議的第 5 節。

這個方法不會影響 的狀態 XPathNavigator

注意

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

適用於

另請參閱