ConfigurationElementCollectionBase<T>.IEnumerable.GetEnumerator Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Returns an enumerator that iterates through the collection.
virtual System::Collections::IEnumerator ^ System.Collections.IEnumerable.GetEnumerator() = System::Collections::IEnumerable::GetEnumerator;
System.Collections.IEnumerator IEnumerable.GetEnumerator ();
Function GetEnumerator () As IEnumerator Implements IEnumerable.GetEnumerator
Returns
A IEnumerator interface that iterates through the collection.
Implements
Remarks
Rather than directly manipulating the enumerator, you should use the C# foreach
statement (for each
in C++, For Each
in Visual Basic), which hides the complexity of the enumerators.
An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined.
Enumerating through a collection is intrinsically not a thread-safe procedure. Even when a collection is synchronized, other threads can still modify the collection, which causes the enumerator to throw an exception. To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions that result from changes made by other threads. To enable the collection to be accessed by multiple threads for reading and writing, you must implement your own synchronization.
For more information about using the enumerator, see the System.Collections.Generic.IEnumerator<T> interface.