加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 使用linq检查ILookup中的键是否存在值的最佳方法

发布时间:2020-12-15 08:42:08 所属栏目:百科 来源:网络整理
导读:ILookupstring,string someList; Cricket Sachin Dravid Dhoni Football Beckham Ronaldo Maradona bool status = someList.Where(x = x.Key == "Football").Where( y = y.Value == "Ronaldo") 应该回归真实 bool status = someList.Where(x = x.Key == "Foo
ILookup<string,string> someList;
            Cricket Sachin
                    Dravid
                    Dhoni
            Football Beckham
                     Ronaldo
                     Maradona
bool status = someList.Where(x => x.Key == "Football").Where( y => y.Value == "Ronaldo")

应该回归真实

bool status = someList.Where(x => x.Key == "Football").Where( y => y.Value == "Venus williams")

应该返回false

ILookup没有value属性,而不是循环,有没有更聪明的方法来获得几行结果.上面的代码是不对的,如果可能的话,希望有类似的东西.我是Linq的新手,所以学习更好的方法

解决方法

ILookup<TKey,TElement>.Item属性返回的对象(当你执行someList […]时调用的是)是IEnumerable< TElement>.因此,您可以将每个项目直接与测试值进行比较.像这样:
var status = someList["Football"].Any(y => y == "Venus Williams");

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读