日期:2014-05-20  浏览次数:20992 次

用聚合函数得出的记录如何进行数据筛选
比如通过 group by Max 得到分组后的最大值,然后在另一个查询中通过 Contains 进行筛选。

众所周知,在大多数情况下,诸如 group by Max 这样的聚会函数,是通过匿名对象来保存查询记录的,但匿名对象无法再次筛选,比如它不存在 Contains 这个方法

请问如何解决这个问题?万分感谢! 

------解决方案--------------------
逻辑上就不存在Contains的概念啊?如果你只知道属性,那么你应该使用属性,例如
var query1 = .......;
var query2 = from x in query1
             where x.ABC == "阿虎"
             select x;

这是你只知道 ABC 属性,这个时候没有必要纠结什么 Contains。