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");