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

linq统计问题



如图:我想得到的结果是: 根据memberid来统计,最多的排第一,以此类推,只取前三名最多的

怎么用linq统计   ,在线等,很急,解决,马上结贴!
LINQ

------解决方案--------------------
var query=db.MemberLog.GroupBy(m=>m.MemberId).OrderByDescending(g=>g.Count()).Select(g=>g.First()).Take(3);

------解决方案--------------------
var result =( from a in Table
                             group a by a.memberid into g
                             orderby g.Count() descending
                             select new
                                 {
                                     MemberId =g.Key,
                                     Count=g.Count()
                                 }).Take(3);

------解决方案--------------------
引用:
2#报错为  :

提示你怎么修改了了
var query=db.MemberLog.GroupBy(m=>m.MemberId).OrderByDescending(g=>g.Count()).Select(g=>g.FirstOrDefault()