(0) exportieren Drucken
Alle erweitern

KeyContainerPermissionAccessEntryEnumerator-Klasse

Stellt den Enumerator für KeyContainerPermissionAccessEntry-Objekte in einer KeyContainerPermissionAccessEntryCollection dar.

Namespace: System.Security.Permissions
Assembly: mscorlib (in mscorlib.dll)

[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public sealed class KeyContainerPermissionAccessEntryEnumerator : IEnumerator
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public final class KeyContainerPermissionAccessEntryEnumerator implements IEnumerator
SerializableAttribute 
ComVisibleAttribute(true) 
public final class KeyContainerPermissionAccessEntryEnumerator implements IEnumerator
Nicht zutreffend.

Mit Enumeratoren können die Daten einer Auflistung nur gelesen werden. Die zugrunde liegende Auflistung kann nicht mithilfe von Enumeratoren geändert werden.

Anfänglich befindet sich der Enumerator vor dem ersten Element in der Auflistung. Die Reset-Methode fügt auch den Enumerator wieder an dieser Position ein. Das Aufrufen der Current-Eigenschaft an dieser Position löst eine Ausnahme aus. Daher muss der Enumerator durch einen Aufruf der MoveNext-Methode auf das erste Element der Auflistung festgelegt werden, bevor der Wert der Current-Eigenschaft gelesen werden kann.

Current gibt so lange dasselbe Objekt zurück, bis MoveNext oder Reset aufgerufen wird. MoveNext legt Current auf das nächste Element fest.

Wenn das Ende der Auflistung überschritten wird, befindet der Enumerator hinter dem letzten Element der Auflistung, und ein Aufruf von MoveNext gibt false zurück. Wenn der letzte Aufruf von MoveNext false zurückgibt, wird beim Aufruf von Current eine Ausnahme ausgelöst. Um Current auf das erste Element der Auflistung zurückzusetzen, rufen Sie Reset und anschließend MoveNext auf.

Ein Enumerator bleibt so lange gültig, bis die Auflistung geändert wird. Wenn an der Auflistung Änderungen vorgenommen werden, z. B. durch Hinzufügen, Ändern oder Entfernen von Elementen, ist der Enumerator unwiderruflich ungültig, und der nächste Aufruf von MoveNext oder Reset löst eine InvalidOperationException aus. Wenn die Auflistung zwischen dem Aufruf von MoveNext und dem Aufruf von Current geändert wird, gibt Current das Element zurück, auf das der Enumerator derzeit festgelegt ist, auch wenn er bereits ungültig ist.

Der Enumerator hat keinen exklusiven Zugriff auf die Auflistung. Daher ist die Enumeration einer Auflistung systemintern keine threadsichere Prozedur. Selbst wenn eine Auflistung synchronisiert wird, besteht die Möglichkeit, dass andere Threads sie ändern. Dies führt dazu, dass der Enumerator eine Ausnahme auslöst. Um während der Enumeration Threadsicherheit zu gewährleisten, können Sie entweder die Auflistung während der gesamten Enumeration sperren, oder Sie können die durch andere Threads aufgrund von Änderungen ausgelösten Ausnahmen abfangen.

System.Object
  System.Security.Permissions.KeyContainerPermissionAccessEntryEnumerator

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

Microsoft .NET Framework 3.0 wird unter Windows Vista, Microsoft Windows XP SP2 und Windows Server 2003 SP1 unterstützt.

.NET Framework

Unterstützt in: 3.0, 2.0
Anzeigen:
© 2014 Microsoft