XPathNavigator.SelectAncestors Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Sélectionne tous les nœuds ancêtres du nœud actuel, qui correspondent aux critères de sélection.
Surcharges
SelectAncestors(XPathNodeType, Boolean) |
Sélectionne tous les nœuds ancêtres du nœud actuel qui possèdent un XPathNodeType correspondant. |
SelectAncestors(String, String, Boolean) |
Sélectionne tous les nœuds ancêtres du nœud actuel dotés du nom local et de l'URI d'espace de noms spécifiés. |
SelectAncestors(XPathNodeType, Boolean)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Sélectionne tous les nœuds ancêtres du nœud actuel qui possèdent un XPathNodeType correspondant.
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
Paramètres
- type
- XPathNodeType
XPathNodeType des nœuds ancêtres.
- matchSelf
- Boolean
Pour inclure le nœud de contexte dans la sélection, true
; sinon, false
.
Retours
XPathNodeIterator qui contient les nœuds sélectionnés. Les nœuds retournés sont dans l'ordre inverse des documents.
Exemples
Pour obtenir un exemple de sélection de nœuds ancêtres, consultez XPathNavigator.SelectAncestors.
Remarques
La SelectAncestors méthode n’a aucun effet sur l’état du XPathNavigator.
Voir aussi
S’applique à
SelectAncestors(String, String, Boolean)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Sélectionne tous les nœuds ancêtres du nœud actuel dotés du nom local et de l'URI d'espace de noms spécifiés.
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
Paramètres
- name
- String
Nom local des nœuds ancêtres.
- namespaceURI
- String
URI d'espace de noms des nœuds ancêtres.
- matchSelf
- Boolean
true
pour inclure le nœud de contexte dans la sélection ; sinon, false
.
Retours
XPathNodeIterator qui contient les nœuds sélectionnés. Les nœuds retournés sont dans l'ordre inverse des documents.
Exceptions
null
ne peut pas être passé comme paramètre.
Exemples
L’exemple suivant illustre la sélection des nœuds ancêtres, enfants et descendants.
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
L'exemple prend le fichier contosoBooks.xml
comme entrée.
<?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>
Remarques
Si String.Empty est spécifié comme name
paramètre, tous les nœuds ancêtres qui appartiennent à l’URI d’espace de noms spécifié sont sélectionnés. Si String.Empty est spécifié comme namespaceURI
paramètre, tous les nœuds ancêtres avec le nom local spécifié qui n’appartiennent à aucun espace de noms sont sélectionnés. Si String.Empty est spécifié comme nom local et URI d’espace de noms, tous les nœuds ancêtres qui n’appartiennent à aucun espace de noms sont sélectionnés.
La SelectAncestors méthode n’a aucun effet sur l’état du XPathNavigator.