XmlNode.GetEnumerator Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets an enumerator that iterates through the child nodes in the current node.
public:
System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
member this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
Returns
An IEnumerator object that can be used to iterate through the child nodes in the current node.
Examples
The following example displays all the books in the XML document.
#using <System.Xml.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Xml;
int main()
{
XmlDocument^ doc = gcnew XmlDocument;
doc->Load( "books.xml" );
Console::WriteLine( "Display all the books..." );
XmlNode^ root = doc->DocumentElement;
IEnumerator^ ienum = root->GetEnumerator();
XmlNode^ book;
while ( ienum->MoveNext() )
{
book = dynamic_cast<XmlNode^>(ienum->Current);
Console::WriteLine( book->OuterXml );
Console::WriteLine();
}
}
using System;
using System.Collections;
using System.Xml;
public class Sample {
public static void Main() {
XmlDocument doc = new XmlDocument();
doc.Load("books.xml");
Console.WriteLine("Display all the books...");
XmlNode root = doc.DocumentElement;
IEnumerator ienum = root.GetEnumerator();
XmlNode book;
while (ienum.MoveNext())
{
book = (XmlNode) ienum.Current;
Console.WriteLine(book.OuterXml);
Console.WriteLine();
}
}
}
Imports System.Collections
Imports System.Xml
public class Sample
public shared sub Main()
Dim doc as XmlDocument = new XmlDocument()
doc.Load("books.xml")
Console.WriteLine("Display all the books...")
Dim root as XmlNode = doc.DocumentElement
Dim ienum as IEnumerator = root.GetEnumerator()
Dim book as XmlNode
while (ienum.MoveNext())
book = CType(ienum.Current, XmlNode)
Console.WriteLine(book.OuterXml)
Console.WriteLine()
end while
end sub
end class
The example uses the file, books.xml
, as input.
<?xml version='1.0'?>
<!-- This file represents a fragment of a book store inventory database -->
<bookstore>
<book genre="autobiography" publicationdate="1981" 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" 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" ISBN="1-861001-57-6">
<title>The Gorgias</title>
<author>
<name>Plato</name>
</author>
<price>9.99</price>
</book>
</bookstore>
Remarks
Provides support for the "for each" style iteration over the nodes in the XmlNode
.
This method is a Microsoft extension to the Document Object Model (DOM).