.NET
[.NET] Collection was modified; enumeration operation may not execute.
WooGong Peter
2017. 5. 30. 11:27
오래된 Error Message 를 소개하고자 합니다. ^^;
"Collection was modified; enumeration operation may not execute."
위 Message 는 한글 에러로는
"컬렉션이 수정되었습니다. 열거 작업이 실행되지 않을 수도 있습니다." 라는 에러로 나타납니다.
foreach (VB.NET 의 경우 For Each) 문은 IEnumerable, IEnumerable<T> 를 구현한 배열이나 컬렉션의 요소들을 반복하여 접근하는 작업을 합니다만
For Each 반복과정에서 배열이나 Collection 의 변경이 생기는 경우 내부에서 사용하는 iterator 가 무효화 되어 사용할 수 없게되어 InvalidOperationException 이 발생하게 됩니다.
따라서 For Each 작업을 하기 위해서는 For 문을 사용하거나
반복에 사용할 대상을 미리 List 로 취합한뒤 그 List 를 대상으로 작업을 하시기 바랍니다.
행복한 고수되십시요.
woojja ))*
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
반응형