Aracılığıyla paylaş


XPathNodeIterator.GetEnumerator Yöntem

Tanım

Seçili düğüm kümesinde yinelemek için bir IEnumerator nesne döndürür.

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

Döndürülenler

IEnumerator Seçili düğüm kümesinde yinelemek için bir nesne.

Uygulamalar

Açıklamalar

Numaralandırıcı nesnenin geçerli konumuna XPathNodeIterator yerleştirilir.

sınıfını kullanarak XPathNodeIterator bir XPathNavigator koleksiyon üzerinde yineleme yapmanın iki yolu vardır.

Yöntemlerden biri yöntemini kullanmak MoveNext ve ardından aşağıdaki örnekte olduğu gibi geçerli XPathNavigator örneği almak için çağrısı Current yapmaktır:

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

Bir diğer yol da yöntemini çağırmak GetEnumerator için bir foreach döngü kullanmak ve aşağıdaki örnekte olduğu gibi düğümleri numaralandırmak için döndürülen IEnumerator arabirimi kullanmaktır:

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

yöntemini ve MoveNextCurrent veya yöntemini kullanmanız GetEnumerator gerekir. Bu iki yaklaşımın birleştirilmesi beklenmeyen sonuçlara neden olabilir. Örneğin, yöntem önce çağrılır ve ardından yöntem döngüde foreach çağrılırsaMoveNext, foreach döngü sonuçları koleksiyonun başından değil, yöntemden sonraki konumdan numaralandırmaya Current başlar.GetEnumerator

Şunlara uygulanır

Ayrıca bkz.