ConfigurationElementCollectionBase<T>.GetEnumerator Method ()
Returns an enumerator that iterates through a collection.
Assembly: Microsoft.Web.Administration (in Microsoft.Web.Administration.dll)
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.
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.