XPathNodeIterator.GetEnumerator XPathNodeIterator.GetEnumerator XPathNodeIterator.GetEnumerator XPathNodeIterator.GetEnumerator Method

Definizione

Restituisce un oggetto IEnumerator con cui scorrere l'insieme di nodi selezionato.Returns an IEnumerator object to iterate through the selected node set.

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

Oggetto IEnumerator con cui scorrere l'insieme di nodi selezionato.An IEnumerator object to iterate through the selected node set.

Implementazioni

Commenti

L'enumeratore è posizionato in corrispondenza della posizione corrente XPathNodeIterator dell'oggetto.The enumerator is positioned on the current position of the XPathNodeIterator object.

Esistono due modi per eseguire l'iterazione XPathNavigator di una raccolta usando XPathNodeIterator la classe.There are two ways to iterate over an XPathNavigator collection by using the XPathNodeIterator class.

Un modo consiste nell'usare il MoveNext metodo e quindi chiamare Current per ottenere l'istanza XPathNavigator corrente, come nell'esempio seguente:One way is to use the MoveNext method and then call Current to get the current XPathNavigator instance, as in the following example:

   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 foreach un ciclo per chiamare GetEnumerator il metodo e usare l' IEnumerator interfaccia restituita per enumerare i nodi, come nell'esempio seguente:Another way is to use a foreach loop to call the GetEnumerator method and use the returned IEnumerator interface to enumerate the nodes, as in the following example:

   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

È necessario usare il MoveNext metodo e Current o usare il GetEnumerator metodo.You should either use the MoveNext method and Current or use the GetEnumerator method. La combinazione di questi due approcci può causare risultati imprevisti.Combining these two approaches can cause unexpected results. Se, ad esempio, MoveNext il metodo viene chiamato per primo e il GetEnumerator foreach metodo viene chiamato nel ciclo, il foreach ciclo non inizierà a enumerare i risultati dall'inizio della raccolta, ma dalla posizione successiva al Current metodo.For example, if the MoveNext method is called first, and then the GetEnumerator method is called in the foreach loop, the foreach loop will not start enumerating the results from the beginning of the collection, but from the position after the Current method.

Si applica a

Vedi anche