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;   //修改下载状态
          }

猜你喜欢

转载自yonglailizhi.iteye.com/blog/2230142