جناب اقای دیندار من از روش زیر که در مدل entity هست واسه paging استفاده میکنم.
نظرتون نسبت به روشی که شما مثال زدین چیه.از لحاظ سرعت و کارایی تفاوتی داره.؟
int index = 0;
if (Request["pagenumber"] != null)
{
index = Int32.Parse(Request["pagenumber"]);
}
int skip=index*5;
WebDBEntities db = new WebDBEntities();
var lst = (from s in db.Products
orderby s.Id
select s).Skip(skip).Take(5);

Repeater1.DataSource = lst;
Repeater1.DataBind();