XPathNavigator.SelectAncestors Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Selecciona todos los nodos antecesores del nodo actual que coincidan con los criterios de selección.
Sobrecargas
SelectAncestors(XPathNodeType, Boolean) |
Selecciona todos los nodos antecesores del nodo actual que tengan un XPathNodeType correspondiente. |
SelectAncestors(String, String, Boolean) |
Selecciona todos los nodos antecesores del nodo actual que tengan el nombre local y el URI de espacio de nombres especificados. |
SelectAncestors(XPathNodeType, Boolean)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Selecciona todos los nodos antecesores del nodo actual que tengan un XPathNodeType correspondiente.
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
Parámetros
- type
- XPathNodeType
XPathNodeType de los nodos antecesores.
- matchSelf
- Boolean
true
para incluir el nodo de contexto en la selección; en caso contrario, false
.
Devoluciones
XPathNodeIterator que contiene los nodos seleccionados. Los nodos que se devuelven están en orden de documento inverso.
Ejemplos
Para obtener un ejemplo de selección de nodos antecesores, vea XPathNavigator.SelectAncestors.
Comentarios
El SelectAncestors método no tiene ningún efecto en el estado de XPathNavigator.
Consulte también
Se aplica a
SelectAncestors(String, String, Boolean)
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
- Source:
- XPathNavigator.cs
Selecciona todos los nodos antecesores del nodo actual que tengan el nombre local y el URI de espacio de nombres especificados.
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
Parámetros
- name
- String
Nombre local de los nodos antecesores.
- namespaceURI
- String
Identificador URI de espacio de nombres de los nodos antecesores.
- matchSelf
- Boolean
Es true
para incluir el nodo de contexto en la selección; en caso contrario, es false
.
Devoluciones
XPathNodeIterator que contiene los nodos seleccionados. Los nodos que se devuelven están en orden de documento inverso.
Excepciones
null
no se puede pasar como parámetro.
Ejemplos
En el ejemplo siguiente se muestra la selección de nodos antecesores, secundarios y descendientes.
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
En el ejemplo se toma como entrada el archivo contosoBooks.xml
.
<?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>
Comentarios
Si String.Empty se especifica como parámetro name
, se seleccionan todos los nodos antecesores que pertenecen al URI de espacio de nombres especificado. Si String.Empty se especifica como namespaceURI
parámetro , se seleccionan todos los nodos antecesores con el nombre local especificado que no pertenecen a ningún espacio de nombres. Si String.Empty se especifica como el nombre local y el URI del espacio de nombres, se seleccionan todos los nodos antecesores que pertenecen a ningún espacio de nombres.
El SelectAncestors método no tiene ningún efecto en el estado de XPathNavigator.