泛型List<T>中方法Remove不能删除对象的解决
2017-07-30 10:12
211 查看
要从内存的List<QuestionsLibraryAndSort>对象中删除一条记录。语句是这样写的:
可是在前后输出list.count值,却发现没有改变。又再次做确认:
发觉success输出为 false 。这说明确实没删除。message.QuestionsLibraryAndSort 是用消息队列RabbitMQ 传过来的 QuestionsLibraryAndSort 对象。在 RedisKey.RedisQuestionsLibraryAndSort
这个list 中不存在怀疑是编码的问题导致 Redis 中存在的 list 中的单个 QuestionsLibraryAndSort 与 RabbitMQ 传来的 QuestionsLibraryAndSort 不一致,导致RabbitMQ传来的QuestionsLibraryAndSort
与Redis 中的相应QuestionsLibraryAndSort 不完全一致而不能正确删除。我采取的一个解决办法是,利用 RemoveAll 方法来取代 Remove 方法。语句如下:
因为这个GID不为空,而且在行中是唯一的。用此搜索匹配记录并删除。经过测试 ,匹配行被顺利删除。 success=1 。问题解决
RedisKey.RedisQuestionsLibraryAndSort.Remove(message.QuestionsLibraryAndSort);
可是在前后输出list.count值,却发现没有改变。又再次做确认:
bool success = RedisKey.RedisQuestionsLibraryAndSort.Remove(message.QuestionsLibraryAndSort);
发觉success输出为 false 。这说明确实没删除。message.QuestionsLibraryAndSort 是用消息队列RabbitMQ 传过来的 QuestionsLibraryAndSort 对象。在 RedisKey.RedisQuestionsLibraryAndSort
这个list 中不存在怀疑是编码的问题导致 Redis 中存在的 list 中的单个 QuestionsLibraryAndSort 与 RabbitMQ 传来的 QuestionsLibraryAndSort 不一致,导致RabbitMQ传来的QuestionsLibraryAndSort
与Redis 中的相应QuestionsLibraryAndSort 不完全一致而不能正确删除。我采取的一个解决办法是,利用 RemoveAll 方法来取代 Remove 方法。语句如下:
int success = RedisKey.RedisQuestionsLibraryAndSort.RemoveAll(m => m.GID == message.QuestionsLibraryAndSort.GID);
因为这个GID不为空,而且在行中是唯一的。用此搜索匹配记录并删除。经过测试 ,匹配行被顺利删除。 success=1 。问题解决
相关文章推荐
- 关于List,ArrayList中remove(object obj)方法不能删除对象问题
- apt-get autoremove不能删除包的解决方法
- IE 浏览器中不能使remove删除节点的解决方法
- 为什么Iterator的remove方法可保证从源集合中安全地删除对象,而在迭代期间不能直接删除集合内元素
- List在执行remove方法不能删除指定的对象
- 点击用户帐户时,弹出”automation 服务器不能创建对象“的解决方法
- “[ODBC Microsoft Access Driver] 不能更新 数据库或对象为只读”解决方法 -zt
- ie浏览器下删除父元素的父元素(祖父元素)-----remove()方法在ie下失效的解决方法
- vue 数组和对象不能直接赋值情况和解决方法(推荐)
- 解决ActiveX部件不能创建对象的有效方法
- windows8 输入法设置(包括不能删除/不可为英文)的解决方法
- excel2010_此工作薄包含嵌入对象_可能不发从这些对象中删除个人信息_的解决方法
- js 与webservice通信返回值包含xml头,不能识别为json对象的解决方法
- 关于在二级目录下,Cookie不能删除或者使用的解决方法的
- Jquery.ajax不能解析json对象,报Invalid JSON错误的原因和解决方法(转)
- for循环删除(ArrayList.remove)及改进方法及对象在内存中的理解
- 子级对象使用float,父级div不能被父级内容撑开解决方法
- Access “不能更新 数据库或对象为只读”的解决方法
- dll hook 之后不能删除解决方法
- IDEA提示JSP页面不能使用内置对象解决方法