pagination. :
public string RenderPaginationControl(int page, int pageSize, int totalItems)
{
int totalPages = (int)Math.Ceiling((double)totalItems/pageSize);
StringBuilder pagerSb = new StringBuilder();
for (int i = 1; i <= totalPages; ++i)
{
if (i != page) { pagerSb.Append(string.Format("<a href='/data.aspx?page={0}'>{0}</a>", i)); }
else { pagerSb.Append(string.Format("<span>{0}</span>", i)); }
}
return pagerSb.ToString();
}
sql,
SELECT COUNT(*) FROM Items
totalItems RenderPaginationControl.
Repeater, :
this.MyRepeater.DataSource = DAL.GetItems(page, pageSize);
this.MyRepeater.DataBind();
int totalItems = DAL.GetTotalNumberOfItems();
this.PaginationLabel.Text = RenderPaginationControl(page, pageSize, totalItems);