Dizine Göre Sıralı Düğüm Alma

World Wide Web Konsorsiyumu (W3C) XML Belge Nesne Modeli (DOM), XmlNamedNodeMap tarafından işlenen sıralanmamış kümenin aksine sıralı düğüm listesini işleme özelliğine sahip bir NodeList'i de açıklar. Microsoft .NET Framework'teki NodeList, XmlNodeList olarak adlandırılır. XmlNodeList döndüren yöntemler ve özellikler şunlardır:

  • XmlNode.ChildNodes

  • XmlDocument.GetElementsByTagName

  • XmlElement.GetElementsByTagName

  • Selectnodes

XmlNodeList, aşağıdaki kod örneğinde gösterildiği gibi XmlNodeList içindeki düğümler üzerinde yineleme yapmak üzere döngü yazmak için kullanılabilecek bir Count özelliğine sahiptir:

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);  
}

Count özelliğine ek olarak, XmlNodeList içindeki düğüm koleksiyonu üzerinde stil yinelemesi sağlayan bir foreach GetEnumerator yöntemi vardır. Aşağıdaki kod örneği deyiminin foreach kullanımını gösterir.

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);  
     }  
  }  

XmlNodeList'te kullanılabilen yöntemler ve özellikler hakkında daha fazla bilgi için bkzXmlNodeList. .

Ayrıca bkz.