Condividi tramite


XPathNodeIterator.GetEnumerator Metodo

Definizione

Restituisce un oggetto IEnumerator con cui scorrere l'insieme di nodi selezionato.

public:
 virtual System::Collections::IEnumerator ^ GetEnumerator();
public virtual System.Collections.IEnumerator GetEnumerator ();
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
override this.GetEnumerator : unit -> System.Collections.IEnumerator
Public Overridable Function GetEnumerator () As IEnumerator

Restituisce

IEnumerator

Oggetto IEnumerator con cui scorrere l'insieme di nodi selezionato.

Implementazioni

Commenti

L'enumeratore viene posizionato sulla posizione corrente dell'oggetto XPathNodeIterator .

Esistono due modi per eseguire l'iterazione su una XPathNavigator raccolta usando la XPathNodeIterator classe .

Un modo consiste nell'usare il MoveNext metodo e quindi chiamare Current per ottenere l'istanza corrente XPathNavigator , come nell'esempio seguente:

while (nodeIterator->MoveNext())
{
    XPathNavigator^ n = nodeIterator->Current;
Console::WriteLine(n->LocalName);
}
while (nodeIterator.MoveNext())
{
    XPathNavigator n = nodeIterator.Current;
    Console.WriteLine(n.LocalName);
}
While nodeIterator.MoveNext()
    Dim n As XPathNavigator = nodeIterator.Current
    Console.WriteLine(n.LocalName)
End While

Un altro modo consiste nell'usare un foreach ciclo per chiamare il metodo e usare l'interfaccia GetEnumerator restituita IEnumerator per enumerare i nodi, come nell'esempio seguente:

for each (XPathNavigator^ n in nodeIterator)
Console::WriteLine(n->LocalName);
foreach (XPathNavigator n in nodeIterator)
    Console.WriteLine(n.LocalName);
For Each n As XPathNavigator In nodeIterator
    Console.WriteLine(nav.LocalName)
Next

È consigliabile usare il MoveNext metodo e Current usare il GetEnumerator metodo . La combinazione di questi due approcci può causare risultati imprevisti. Ad esempio, se il metodo viene chiamato prima e quindi il MoveNext GetEnumerator metodo viene chiamato nel foreach ciclo, il foreach ciclo non inizierà ad enumerare i risultati dall'inizio della raccolta, ma dalla posizione dopo il Current metodo.

Si applica a

Vedi anche