1. 程式人生 > >C# Dictionary在foreach中不允許修改值

C# Dictionary在foreach中不允許修改值

在 foreach 中修改Dictionary中的值是不允許的,可以將key 先放在List中,foreach 這個list ,找到需要修改的項後,再修改原Dic中的內容。

例如

            Dictionary<string, int> imgSet = new Dictionary<string, int>();
            imgSet.Add("1.jpg", 0);
            List<string> imgList = new List<string>();
            imgList.AddRange(imgSet.Keys);
            foreach (string imgUrl in imgList)
            {
                this._fileUrlSet[imgUrl] = 1;   //修改下載狀態
          }