开发者

Collection was modified; enumeration operation may not execute. when update values of hashtable

this code th开发者_StackOverflowrow exception while i am trying to update value ,first value only updated and then throw the exception "Collection was modified; enumeration operation may not execute." !!!!

        Hashtable hh = new Hashtable();
        hh.Add("val 1",null);
        hh.Add("val 2", null);

        foreach (string dd in hh.Keys)
        {
            hh[dd] = "some_value";
           // MessageBox.Show(dd.Value.ToString());
        }

i need to update empty values in hashtables or any equivalent structure that has [key,value]??


You need to make copy of hh.Keys, because you are trying to change Hashtable which is invalid operation while enumerating its keys in the foreach loop.

Try this code

foreach (string dd in new List<object>(hh.Keys.Cast<object>()))
{
    hh[dd] = "some_value";
    MessageBox.Show(dd);
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜