我试图用列表创建分页。我尝试下面的代码
IList<portable.ActionReturnResult> GetPage(
IList<portable.ActionReturnResult> list, int page, int pageSize)
{
return list.Skip(page * pageSize).Take(pageSize).ToList();
}
IList<portable.ActionReturnResult> Pageload =
GetPage(appBase.Results, currentpage, pageSize).ToList();
此代码未返回正确的值。我有100条记录(页面大小为5和20页),如果我的页面= 20,页面大小= 5,则返回0。此代码正确吗?我找到了这个。
我需要加载第20页加载(最近5条记录)
答案 0 :(得分:1)
在您的代码中,页面从零开始,因此第20页将需要105条记录。如果您希望页码从1开始,则需要对代码进行较小的更改:
IList<portable.ActionReturnResult> GetPage(IList<portable.ActionReturnResult> list,
int page, int pageSize)
{
return list.Skip((page-1) * pageSize).Take(pageSize).ToList();
//subtract 1 here
}