搜索列表时,是否有一个linq lambda搜索方法返回null,而不是引发异常?
我当前的解决方案是这样的:(以避免引发异常)
if (list.Exists(x => x.Foo == Foo))
{
var listItem = list.Find(x => x.Foo == Foo);
}
重复表达只是感觉不对。
就像是 ...
var listItem = list.Find(x => x.Foo == Foo);
if (listItem != null)
{
//Do stuff
}
...对我来说感觉更好。还是只是我?
您对此有更好的方法吗?(解决方案不必返回null,只有更好的解决方案才是好的)
Find
method判断该值是否存在。您应该使用FindIndex
,Exists
或者Contains
在这种情况下使用。