XmlNode.GetEnumerator Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает перечислитель, выполняющий итерацию дочерних узлов текущего узла.
public:
System::Collections::IEnumerator ^ GetEnumerator();
public System.Collections.IEnumerator GetEnumerator ();
member this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator
Возвращаемое значение
Объект IEnumerator, который можно использовать для итерации дочерних узлов в текущем узле.
Примеры
В следующем примере отображаются все книги в XML-документе.
#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
В этом примере файл books.xml
используется в качестве входных данных.
<?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>
Комментарии
Обеспечивает поддержку итерации стиля "for each" по узлам в .XmlNode
Этот метод является расширением Майкрософт для модели объектов документов (DOM).