4.0语法中实现自动分页只需要两个方法即可,Skip() ----跳过序列中指定的元素,Take()-----从序列的开头返回指定数量元素。
一般用自动分页都是无刷新的,可以把显示的数据,用局部页面封装起来,每次分页的时候就异步来获取局部页面。
ShopBackDataContext sc = new ShopBackDataContext(); //LinQ to SQL 类
/// <summary> /// 自动分页 /// </summary> /// <param name="PageCount">第几页</param> /// <returns></returns> public ActionResult AutoPage(int? PageCurrent) //参数是前台你点第几页传过来的值,例如:你点第3页,就是 3 { int PageSize=5; //每页显示多少个 int PageTotal=sc.Address.Count();//总共多少条记录 int PageCount=PageTotal/PageSize; //总共有几页 if (PageTotal%PageSize!=0) { PageCount+=1; } var result=sc.Address.Skip(PageCurrent.Value*PageSize).Take(PageSize).AsEnumerable(); //显示第几页的5条数据 return View(); }