1、获取分页目录
/// <summary>
/// 获取分页目录
/// </summary>
/// <param name="PageSize"></param>
/// <param name="objs"></param>
/// <returns></returns>
protected string GetQueryPagesMenu(int PageSize,List<mUser> objs)
{
int Count;
var db = objs;
var query = from oneItem in db
select oneItem;
Count = (query.Count() / PageSize + 1);//不足一页按一页算
string PageMenu = "";
//拼接分页目录
for (int i = 1; i <= Count; i++)
{
PageMenu += "<a href='?CurPage=" + i.ToString() + "'>"+i.ToString()+"</a> | ";
}
return PageMenu;
}
2、根据分页数获取相应的数据集
/// <summary>
/// 获取分页后的数据集
/// </summary>
/// <param name="PageSize">每页显示的记录数</param>
/// <param name="CurPage">页数</param>
/// <param name="objs">数据总集合</param>
/// <returns></returns>
protected List<mUser> QueryByPage(int PageSize, int CurPage, List<mUser> objs)
{
var query = from oneItem in objs select oneItem;
return query.Take(PageSize * CurPage).Skip(PageSize * (CurPage - 1)).ToList();
}
3、获取页数,绑定数据集到控件
if (!IsPostBack)
{
int CurPage = 1;
int PageSize = 5;
int.TryParse(Request["CurPage"], out CurPage);
if (CurPage == 0)
CurPage = 1;
//获取总数据集合
List<mUser> objs = new List<mUser>();
objs = DAL.User.GetList();
//绑定数据显示控件
GridView1.DataSource = QueryByPage(PageSize, CurPage, objs);
GridView1.DataBind();
//获取分页目录
ltPage.Text = GetQueryPagesMenu(PageSize, objs);
}
————————————————参考链接https://blog.csdn.net/aganar/article/details/6280834