我试图更新循环中的哈希表,但得到一个错误:System.InvalidOperationException:集合被修改;枚举操作可能不会执行。如何更新循环中的C#哈希表?
private Hashtable htSettings_m = new Hashtable();
htSettings_m.Add("SizeWidth", "728");
htSettings_m.Add("SizeHeight", "450");
string sKey = "";
string sValue = "";
foreach (DictionaryEntry deEntry in htSettings_m)
{
// Get value from Registry and assign to sValue.
// ...
// Change value in hashtable.
sKey = deEntry.Key.ToString();
htSettings_m[sKey] = sValue;
}
有没有办法解决这个问题,或者为此目的可能有更好的数据结构?
认为,这是一个问题DUP看到:http://stackoverflow.com/questions/287195/how-to-add-items-to-a-collection -while-consume-it – 2008-11-28 22:03:20