XPathNavigator.SelectAncestors Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vybere všechny nadřazené uzly aktuálního uzlu, které splňují kritéria výběru.
Přetížení
SelectAncestors(XPathNodeType, Boolean) |
Vybere všechny nadřazené uzly aktuálního uzlu, které mají odpovídající XPathNodeTypeuzel . |
SelectAncestors(String, String, Boolean) |
Vybere všechny nadřazené uzly aktuálního uzlu, které mají zadaný místní název a identifikátor URI oboru názvů. |
SelectAncestors(XPathNodeType, Boolean)
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
Vybere všechny nadřazené uzly aktuálního uzlu, které mají odpovídající XPathNodeTypeuzel .
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
Parametry
- type
- XPathNodeType
nadřazených XPathNodeType uzlů.
- matchSelf
- Boolean
Pokud chcete do výběru zahrnout kontextový uzel, true
v opačném případě . false
Návraty
Obsahuje XPathNodeIterator vybrané uzly. Vrácené uzly jsou v obráceném pořadí dokumentů.
Příklady
Příklad výběru nadřazených uzlů najdete v tématu XPathNavigator.SelectAncestors.
Poznámky
Metoda SelectAncestors nemá žádný vliv na stav metody XPathNavigator.
Viz také
Platí pro
SelectAncestors(String, String, Boolean)
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
- Zdroj:
- XPathNavigator.cs
Vybere všechny nadřazené uzly aktuálního uzlu, které mají zadaný místní název a identifikátor URI oboru názvů.
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
Parametry
- name
- String
Místní název nadřazených uzlů.
- namespaceURI
- String
Identifikátor URI oboru názvů nadřazených uzlů.
- matchSelf
- Boolean
Pokud chcete do výběru zahrnout kontextový uzel, true
v opačném případě . false
Návraty
Obsahuje XPathNodeIterator vybrané uzly. Vrácené uzly jsou v obráceném pořadí dokumentů.
Výjimky
null
nelze předat jako parametr.
Příklady
Následující příklad znázorňuje výběr nadřazeného, podřízeného a podřízeného uzlu.
XPathDocument^ document = gcnew 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);
}
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
V příkladu se contosoBooks.xml
soubor používá jako vstup.
<?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>
Poznámky
Pokud String.Empty je zadán jako name
parametr, jsou vybrány všechny nadřazené uzly, které patří do zadaného identifikátoru URI oboru názvů. Pokud String.Empty je zadán jako namespaceURI
parametr, budou vybrány všechny nadřazené uzly se zadaným místním názvem, které nepatří do žádného oboru názvů. Pokud String.Empty je zadaný jako místní název i identifikátor URI oboru názvů, vyberou se všechny nadřazené uzly, které nepatří do žádného oboru názvů.
Metoda SelectAncestors nemá žádný vliv na stav metody XPathNavigator.