Linq to sql之分页

普通方式分页:

View Code
      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();
//没什么必要
System.Threading.Tasks.Parallel.For(1,PageCount+1,i=>
{
SBuilder.AppendFormat("&nbsp;&nbsp;<a href=\"SepPage.aspx?Pa=" + i + "\">" + i + "</a>&nbsp;&nbsp;");
}
);
Ou = SBuilder.ToString();
return FiDate;
}

 

posted on 2011-12-05 23:04  SatanLucifer  阅读(146)  评论(0编辑  收藏  举报