Dictionary<TKey,TValue>.Enumerator.IEnumerator.Reset メソッド


列挙子を初期位置、つまりコレクションの最初の要素の前に設定します。Sets the enumerator to its initial position, which is before the first element in the collection.

 virtual void System.Collections.IEnumerator.Reset() = System::Collections::IEnumerator::Reset;
void IEnumerator.Reset ();
Sub Reset () Implements IEnumerator.Reset



コレクションは、列挙子の作成後に変更されました。The collection was modified after the enumerator was created.


IEnumerator.Reset メソッドを呼び出した後、MoveNext メソッドを呼び出して、Current プロパティの値を読み取る前に、列挙子をコレクションの最初の要素に進める必要があります。After calling the IEnumerator.Reset method, you must call the MoveNext method to advance the enumerator to the first element of the collection before reading the value of the Current property.

列挙子は、コレクションが変更されない限り有効です。An enumerator remains valid as long as the collection remains unchanged. 要素の追加や容量の変更などの変更がコレクションに対して行われた場合、列挙子はなりに無効になり、次に MoveNext または IEnumerator.Reset を呼び出すと InvalidOperationExceptionがスローされます。If changes are made to the collection, such as adding elements or changing the capacity, the enumerator is irrecoverably invalidated and the next call to MoveNext or IEnumerator.Reset throws an InvalidOperationException.

.NET Core 3.0 + のみ: 列挙子を無効にしない変更メソッドのみが Remove および Clearます。.NET Core 3.0+ only: The only mutating methods which do not invalidate enumerators are Remove and Clear.