Delen via


Geordende knooppunt ophalen op index

Het World Wide Web Consortium (W3C) XML Document Object Model (DOM) beschrijft ook een NodeList, die de mogelijkheid heeft om een geordende lijst met knooppunten te verwerken, in plaats van de niet-geordende set die wordt verwerkt door de XmlNamedNodeMap. De NodeList in microsoft .NET Framework heet XmlNodeList. Methoden en eigenschappen die een XmlNodeList retourneren, zijn:

  • XmlNode.ChildNodes

  • XmlDocument.GetElementsByTagName

  • XmlElement.GetElementsByTagName

  • XmlNode.SelectNodes

De XmlNodeList heeft een eigenschap Count die kan worden gebruikt om lussen te schrijven om de knooppunten in de XmlNodeList te herhalen, zoals wordt weergegeven in het volgende codevoorbeeld:

Dim doc as XmlDocument = new XmlDocument()  
   doc.Load("books.xml")  
  
    ' Retrieve all book titles.  
    Dim root as XmlElement = doc.DocumentElement  
    Dim elemList as XmlNodeList = root.GetElementsByTagName("title")  
    Dim i as integer  
    for i=0  to elemList.Count-1  
        ' Display all book titles in the Node List.  
        Console.WriteLine(elemList.ItemOf(i).InnerXml)  
    next  
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);  
}

Naast de eigenschap Count is er een GetEnumerator-methode die een iteratie van een stijl foreach biedt voor de verzameling knooppunten in de XmlNodeList. In het volgende codevoorbeeld ziet u het gebruik van de foreach instructie.

Dim doc As New XmlDocument()  
doc.Load("books.xml")  
  
' Get book titles.  
Dim root As XmlElement = doc.DocumentElement  
Dim elemList As XmlNodeList = root.GetElementsByTagName("title")  
Dim ienum As IEnumerator = elemList.GetEnumerator()  
' Loop over the XmlNodeList using the enumerator ienum
While ienum.MoveNext()  
    ' Display the book title.  
    Dim title As XmlNode = CType(ienum.Current, XmlNode)  
    Console.WriteLine(title.InnerText)  
End While  
{  
     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);  
     }  
  }  

Zie voor meer informatie over de methoden en eigenschappen die beschikbaar zijn op de XmlNodeListXmlNodeList.

Zie ook