码迷,mamicode.com
首页 > 其他好文 > 详细

lambda语句实现分页查询

时间:2015-08-30 23:11:09      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:分页查询   lambda语句   

      在进行数据查询的时候我们有真分页和假分页两种,所谓真分页就是按照根据pageIndex(当前页码)和pageSize(每页的记录条数)去数据库中查找响应的记录,而假分页呢就是先把数据的所有记录都查出来,然后在自己去截取其实截取的过程是一样的,只不过一个是在数据库中进行,一个是在我们的逻辑代码中进行。下面给大家介绍一种分页写法,让大家更好的使用lambda语句,并且能更好的理解分页查询。

#region 多条件搜索用户信息
        public IQueryable<UserInfo>SearchUserInfo(Model.SearchParam.UserInfoSearch userInfoSerachParam)
        {
//加载所有信息
            var temp =this.DbSession.UserInfoDal.LoadEntities(c=>true);
            if(!string.IsNullOrEmpty(userInfoSerachParam.UserName))
            {
//进行条件筛选(根据姓名筛选)
                temp =temp.Where<UserInfo>(c =>c.UserName.Contains(userInfoSerachParam.UserName));
            }
 if(!string.IsNullOrEmpty(userInfoSerachParam.UserMail))
            {
//进行条件筛选(根据邮箱筛选)
                temp =temp.Where<UserInfo>(c=>c.Email.Contains(userInfoSerachParam.UserMail));
            }
//总记录条数
            userInfoSerachParam.TotalCount =temp.Count();
//截取当前PageIndex 下的PageSize条记录
            return temp.OrderBy<UserInfo,int>(c => c.ID).Skip<UserInfo>((userInfoSerachParam.PageIndex - 1)*userInfoSerachParam.PageSize).Take<UserInfo>(userInfoSerachParam.PageSize);
        }
        #endregion


版权声明:本文为博主原创文章,未经博主允许不得转载。

lambda语句实现分页查询

标签:分页查询   lambda语句   

原文地址:http://blog.csdn.net/xfz0330/article/details/48111085

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!