补充:
你是多线程用么?那你不能直接用的
请你把Dictionary强制转换成ICollection,获取其SyncRoot属性,lock他再读取就可以避免多线程问题贺野了
C#Dictionary异常:给定关键字不在字典中是设置错误造成的,解决方法为:
1、首先可以通过‘键’来找到访问字典所需要的值,类似于列表和元组的访问方式。
2、如果‘键’在字典里不存在,则就会出现报错。
3、乎裂改所以就需要判断‘键’是否存岁判在。
4、也可以使用get( )方法获取指定键的值。
注意事项:
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏以及不允许多重源轿继承)。
有可能是多线程引起冲突,解决办局核法是使用线程安全的字典ConcurrentDictionary<TKey, TValue>类
http://msdn.microsoft.com/zh-cn/library/dd287191.aspx
另外在foreach里面不能再修改foreach的list,这是桐猛掘常识知锋,你可以先克隆一个list来遍历。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)