Sdílet prostřednictvím


XPathNodeIterator.GetEnumerator Metoda

Definice

IEnumerator Vrátí objekt, který se má iterovat přes vybranou sadu uzlů.

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

Návraty

Objekt IEnumerator , který se má iterovat přes vybranou sadu uzlů.

Implementuje

Poznámky

Enumerátor je umístěn na aktuální pozici objektu XPathNodeIterator .

Existují dva způsoby, jak iterovat kolekci XPathNavigator pomocí XPathNodeIterator třídy.

Jedním ze způsobů je použít metodu MoveNext a pak volat Current k získání aktuální XPathNavigator instance, jako v následujícím příkladu:

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

Dalším způsobem je použití foreach smyčky k volání GetEnumerator metody a použití vráceného IEnumerator rozhraní k vytvoření výčtu uzlů, jako v následujícím příkladu:

foreach (XPathNavigator n in nodeIterator)
    Console.WriteLine(n.LocalName);
For Each n As XPathNavigator In nodeIterator
    Console.WriteLine(nav.LocalName)
Next

Tuto metodu MoveNextCurrent byste měli použít nebo použít GetEnumerator . Kombinace těchto dvou přístupů může způsobit neočekávané výsledky. Pokud je například MoveNext metoda volána jako první a metoda GetEnumerator je volána ve foreach smyčce, foreach smyčka nezačne výčet výsledků od začátku kolekce, ale z pozice za metodou Current .

Platí pro

Viz také