C# – InvalidOperationException: out of sync

一直覺得 error/exception 系列其實蠻適合留下紀錄, 但一直偷懶錯過了很多…(掩面
但我想現在開始也還不遲 哈哈哈~~
「InvalidOperationException: out of sync」

這個錯誤會在你走訪 IEnumerator 系列物件(e.g. Dictionary)時, 嘗試修改該物件內容時發生.

var dict = new Dictionary();
foreach (var val in dict.Values)
{
    // use val here
}

可透過 .ToList() 之類的行為建立副本來避免錯誤, 但這樣就要注意內容是否還是你想要的!

var values = dict.Values.ToList();
foreach (var val in values)
{
    // use val here
}

ref: https://answers.unity.com/answers/409844/view.html

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.