一个linq+lambda 表达式 分页查询的例子(查询 一段时间内所有用户登陆的次数)

来源:互联网 发布:php error log 日志 编辑:程序博客网 时间:2024/05/21 23:40

查询 一段时间内所有 用户登陆的 次数。

 var q = (from user in MyData.Cn_UserLog                    where user.OperateTime > start && user.OperateTime < end                    group user by new {  user.CompanyId } into g                    select new                    {                                             LoginCount = g.Count(),                        CompanyID = g.Key.CompanyId                    }).OrderByDescending(m => m.CompanyID).Skip(count * (page - 1)).Take(count).ToList();

我这里 user和company 是一对一的关系,所以我只需查出companyid

然后 可以 根据id查询 自己需要的东西

List<MemberLogin> list = new List<MemberLogin>();                foreach (var s in q)                {                    MemberLogin model = new MemberLogin();                    View_Member vm = MyData.View_Member.Where(m => m.CompanyId == s.CompanyID).FirstOrDefault();                    model.MemberID = vm.MemberId;                    model.CompanyNameCn = vm.CompanyNameCn;                    model.LoginCount = s.LoginCount;                    model.MemberName = vm.UserName;                    model.RegisterTime = vm.RegisterTime;                    list.Add(model);                }


原创粉丝点击