XPathNavigator.SelectAncestors Methode

Definition

Wählt alle Vorgängerknoten des aktuellen Knotens aus, die den Auswahlkriterien entsprechen.

Überlädt

Name Beschreibung
SelectAncestors(XPathNodeType, Boolean)

Wählt alle Vorgängerknoten des aktuellen Knotens mit einem übereinstimmenden Knoten XPathNodeTypeaus.

SelectAncestors(String, String, Boolean)

Wählt alle Vorgängerknoten des aktuellen Knotens mit dem angegebenen lokalen Namen und Namespace-URI aus.

SelectAncestors(XPathNodeType, Boolean)

Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs

Wählt alle Vorgängerknoten des aktuellen Knotens mit einem übereinstimmenden Knoten XPathNodeTypeaus.

public:
 virtual System::Xml::XPath::XPathNodeIterator ^ SelectAncestors(System::Xml::XPath::XPathNodeType type, bool matchSelf);
public virtual System.Xml.XPath.XPathNodeIterator SelectAncestors(System.Xml.XPath.XPathNodeType type, bool matchSelf);
abstract member SelectAncestors : System.Xml.XPath.XPathNodeType * bool -> System.Xml.XPath.XPathNodeIterator
override this.SelectAncestors : System.Xml.XPath.XPathNodeType * bool -> System.Xml.XPath.XPathNodeIterator
Public Overridable Function SelectAncestors (type As XPathNodeType, matchSelf As Boolean) As XPathNodeIterator

Parameter

type
XPathNodeType

Die XPathNodeType der Vorgängerknoten.

matchSelf
Boolean

Um den Kontextknoten in die Auswahl einzuschließen, trueandernfalls false.

Gibt zurück

Ein XPathNodeIterator Element, das die ausgewählten Knoten enthält. Die zurückgegebenen Knoten befinden sich in umgekehrter Dokumentreihenfolge.

Beispiele

Ein Beispiel für die Auswahl von Vorgängerknoten finden Sie unter XPathNavigator.SelectAncestors.

Hinweise

Die SelectAncestors Methode hat keine Auswirkung auf den Zustand des XPathNavigator.

Weitere Informationen

Gilt für:

SelectAncestors(String, String, Boolean)

Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs
Quelle:
XPathNavigator.cs

Wählt alle Vorgängerknoten des aktuellen Knotens mit dem angegebenen lokalen Namen und Namespace-URI aus.

public:
 virtual System::Xml::XPath::XPathNodeIterator ^ SelectAncestors(System::String ^ name, System::String ^ namespaceURI, bool matchSelf);
public virtual System.Xml.XPath.XPathNodeIterator SelectAncestors(string name, string namespaceURI, bool matchSelf);
abstract member SelectAncestors : string * string * bool -> System.Xml.XPath.XPathNodeIterator
override this.SelectAncestors : string * string * bool -> System.Xml.XPath.XPathNodeIterator
Public Overridable Function SelectAncestors (name As String, namespaceURI As String, matchSelf As Boolean) As XPathNodeIterator

Parameter

name
String

Der lokale Name der Vorgängerknoten.

namespaceURI
String

Der Namespace-URI der Vorgängerknoten.

matchSelf
Boolean

Um den Kontextknoten in die Auswahl einzuschließen, trueandernfalls false.

Gibt zurück

Ein XPathNodeIterator Element, das die ausgewählten Knoten enthält. Die zurückgegebenen Knoten befinden sich in umgekehrter Dokumentreihenfolge.

Ausnahmen

null kann nicht als Parameter übergeben werden.

Beispiele

Das folgende Beispiel veranschaulicht die Auswahl von Vorgänger-, untergeordneten und untergeordneten Knoten.

XPathDocument document = new XPathDocument("contosoBooks.xml");
XPathNavigator navigator = document.CreateNavigator();

navigator.MoveToChild("bookstore", "http://www.contoso.com/books");
navigator.MoveToChild("book", "http://www.contoso.com/books");

// Select all the descendant nodes of the book node.
XPathNodeIterator bookDescendants = navigator.SelectDescendants("", "http://www.contoso.com/books", false);

// Display the LocalName of each descendant node.
Console.WriteLine("Descendant nodes of the book node:");
while (bookDescendants.MoveNext())
{
    Console.WriteLine(bookDescendants.Current.Name);
}

// Select all the child nodes of the book node.
XPathNodeIterator bookChildren = navigator.SelectChildren("", "http://www.contoso.com/books");

// Display the LocalName of each child node.
Console.WriteLine("\nChild nodes of the book node:");
while (bookChildren.MoveNext())
{
    Console.WriteLine(bookChildren.Current.Name);
}

// Select all the ancestor nodes of the title node.
navigator.MoveToChild("title", "http://www.contoso.com/books");

XPathNodeIterator bookAncestors = navigator.SelectAncestors("", "http://www.contoso.com/books", false);

// Display the LocalName of each ancestor node.
Console.WriteLine("\nAncestor nodes of the title node:");

while (bookAncestors.MoveNext())
{
    Console.WriteLine(bookAncestors.Current.Name);
}
Dim document As XPathDocument = New XPathDocument("contosoBooks.xml")
Dim navigator As XPathNavigator = document.CreateNavigator()

navigator.MoveToChild("bookstore", "http://www.contoso.com/books")
navigator.MoveToChild("book", "http://www.contoso.com/books")

' Select all the descendant nodes of the book node.
Dim bookDescendants As XPathNodeIterator = navigator.SelectDescendants("", "http://www.contoso.com/books", False)

' Display the LocalName of each descendant node.
Console.WriteLine("Descendant nodes of the book node:")
While bookDescendants.MoveNext()
    Console.WriteLine(bookDescendants.Current.Name)
End While

' Select all the child nodes of the book node.
Dim bookChildren As XPathNodeIterator = navigator.SelectChildren("", "http://www.contoso.com/books")

' Display the LocalName of each child node.
Console.WriteLine(vbCrLf & "Child nodes of the book node:")
While bookChildren.MoveNext()
    Console.WriteLine(bookChildren.Current.Name)
End While

' Select all the ancestor nodes of the title node.
navigator.MoveToChild("title", "http://www.contoso.com/books")

Dim bookAncestors As XPathNodeIterator = navigator.SelectAncestors("", "http://www.contoso.com/books", False)

' Display the LocalName of each ancestor node.
Console.WriteLine(vbCrLf & "Ancestor nodes of the title node:")

While bookAncestors.MoveNext()
    Console.WriteLine(bookAncestors.Current.Name)
End While

Im Beispiel wird die contosoBooks.xml Datei als Eingabe verwendet.

<?xml version="1.0" encoding="utf-8" ?>
<bookstore xmlns="http://www.contoso.com/books">
    <book genre="autobiography" publicationdate="1981-03-22" ISBN="1-861003-11-0">
        <title>The Autobiography of Benjamin Franklin</title>
        <author>
            <first-name>Benjamin</first-name>
            <last-name>Franklin</last-name>
        </author>
        <price>8.99</price>
    </book>
    <book genre="novel" publicationdate="1967-11-17" ISBN="0-201-63361-2">
        <title>The Confidence Man</title>
        <author>
            <first-name>Herman</first-name>
            <last-name>Melville</last-name>
        </author>
        <price>11.99</price>
    </book>
    <book genre="philosophy" publicationdate="1991-02-15" ISBN="1-861001-57-6">
        <title>The Gorgias</title>
        <author>
            <name>Plato</name>
        </author>
        <price>9.99</price>
    </book>
</bookstore>

Hinweise

Wenn String.Empty als name Parameter angegeben wird, werden alle Vorgängerknoten ausgewählt, die zum angegebenen Namespace-URI gehören. Wenn String.Empty als namespaceURI Parameter angegeben wird, werden alle Vorgängerknoten mit dem angegebenen lokalen Namen ausgewählt, der zu keinem Namespace gehört. Wenn String.Empty sowohl als lokaler Name als auch als Namespace-URI angegeben wird, werden alle Vorgängerknoten ausgewählt, die zu keinem Namespace gehören.

Die SelectAncestors Methode hat keine Auswirkung auf den Zustand des XPathNavigator.

Weitere Informationen

Gilt für: