PersonalizationStateInfoCollection.GetEnumerator Metod

Definition

Returnerar en standarduppräkning som kan iterera över samlingen. Den här metoden kan inte ärvas.

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

Returer

En IEnumerator som kan användas för att iterera genom samlingen.

Implementeringar

Kommentarer

Uppräknare kan användas för att läsa data i samlingen, men de kan inte användas för att ändra den underliggande samlingen.

Inledningsvis placeras uppräknaren före det första elementet i samlingen. Metoden Reset för också uppräknaren tillbaka till den här positionen. I det här läget är egenskapen Current odefinierad. Därför måste du anropa MoveNext metoden för att flytta uppräknaren till det första elementet i samlingen innan du läser värdet Currentför . Mer information om uppräknare finns i IEnumerator.

En uppräkning förblir giltig så länge samlingen förblir oförändrad. Om ändringar görs i samlingen, till exempel att lägga till, ändra eller ta bort element, är uppräknaren oåterkalleligen ogiltig och dess beteende är odefinierat.

foreach-instruktionen för C#-språket (for each i Visual Basic) döljer uppräknarens komplexitet. Därför rekommenderas användning foreach i stället för att direkt manipulera uppräknaren.

Uppräknaren har inte exklusiv åtkomst till samlingen. Därför är uppräkning genom en samling i sig inte en trådsäker procedur. För att garantera trådsäkerheten under uppräkningen kan du låsa samlingen under hela uppräkningen. Om du vill att samlingen ska kunna nås av flera trådar för läsning och skrivning måste du implementera din egen synkronisering.

Gäller för