Linq to sql 分页

本文详细介绍了如何使用Linq进行查询操作,并结合分页技术优化查询效率。
      private IQueryable GetDate()
        {
            Linq.PageDataContext Lpage = new Linq.PageDataContext();
            var Date = from lp in Lpage.Person
                       select new
                           {
                               lp.ID,
                               lp.Names,
                               lp.Sex,
                               lp.Adress,
                               lp.Tel
                           };
            //一共多少条记录
            int Count = Lpage.Person.Count();
            //总页数,用来显示页码
            int PageCount = (int)Math.Ceiling((decimal)Count / 10);//(Math.Ceiling-- 1.1=2; 1.0=1)      


            //无Request
            int SkipPage=0;
            //如果有Request
            if (!string.IsNullOrEmpty(Request["Pa"]))
            {
                //接收传过来的页码值
                int page = Convert.ToInt32(Request["Pa"]);
                //求出每页要跳过的数据
                SkipPage = (page - 1) * 10;
            }
            var FiDate = Date.Skip(SkipPage).Take(10);
            //设置前台页面显示
            StringBuilder SBuilder = new StringBuilder();
            //没什么必要
            for (int i = 1; i <= PageCount; i++)
            {
                SBuilder.AppendFormat("<a href=\"SepPage.aspx?Pa=" + i + "\">" + i + "</a>");       
                
            }

            //并行计算
            //System.Threading.Tasks.Parallel.For(1,PageCount+1,i=>
            //{
            //}
            //);   
            Ou = SBuilder.ToString();
            return FiDate;
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值