首页 > 代码库 > 如何解决linQ“序列不包含任何元素”的问题?

如何解决linQ“序列不包含任何元素”的问题?

描述:该问题出现在校对BT种子数据的时候遇到的bug,原因是使用linq查找元素的时候

B是A的一个子集, B在A中一定存在,这种情况下就不会抛出异常情况,反之B的一部分不属于A就会异常
应为B中的一个元素在A中查找是没有找到,此时使用First()就会有bug

用FirstOrDefault或者Find。First代表一定能找到,找不到就抛出异常;
看看这个:http://q.cnblogs.com/q/23377/
用FirstOrDefault或者Find。

First代表一定能找到,找不到就抛出异常

怎么解决呢?

使用try...cache 语句捕获就行了