Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés

Recuperación de nodos ordenados por índice

 

DOM del W3C también describe una NodeList, que tiene la capacidad de controlar una lista de nodos ordenados, en contraposición al conjunto desordenado controlado por XmlNamedNodeMap. La NodeList incluida en .NET Framework se denomina XmlNodeList. Los métodos y propiedades que devuelve una XmlNodeList son los siguientes:

  • XmlNode.ChildNodes

  • XmlDocument.GetElementsByTagName

  • XmlElement.GetElementsByTagName

  • XmlNode.SelectNodes

XmlNodeList tiene una propiedad Count que se puede utilizar para escribir bucles y recorrer en iteración los nodos de XmlNodeList, tal como se muestra en el ejemplo de código siguiente:

XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
// Retrieve all book titles.
XmlElement root = doc.DocumentElement;
XmlNodeList elemList = root.GetElementsByTagName("title");
for (int i=0; i < elemList.Count; i++)
{   
   // Display all book titles in the Node List.
   Console.WriteLine(elemList[i].InnerXml);
} 

Además de la propiedad Count, hay un método GetEnumerator que proporciona una forma de iteración del estilo de foreach sobre la colección de nodos de XmlNodeList. En el código de ejemplo siguiente se muestra el uso de la instrucción foreach.

{
     XmlDocument doc = new XmlDocument();
     doc.Load("books.xml");

     // Get book titles.
     XmlElement root = doc.DocumentElement;
     XmlNodeList elemList = root.GetElementsByTagName("title");
     IEnumerator ienum = elemList.GetEnumerator();  
     // Loop over the XmlNodeList using the enumerator ienum        
     while (ienum.MoveNext())
     {
          // Display the book title.
           XmlNode title = (XmlNode) ienum.Current;
           Console.WriteLine(title.InnerText);
     }
  }

Para obtener más información acerca de los métodos y propiedades disponibles en XmlNodeList, vea XmlNodeList (Miembros).

Mostrar: