【发布时间】:2016-11-09 16:21:33
【问题描述】:
我正在尝试实现服务器端分页,用jquerydatatable过滤。
但它总是只在页脚处创建一页。
public JsonResult UserList(int draw, int length, int start)
{
PaginattionModel<PointUserModel> paginationModel = new PaginattionModel<PointUserModel>()
{
draw = draw
};
int sortColumn = -1;
string sortDirection = "asc";
if (Request.Form["order[0][column]"] != null)
{
sortColumn = int.Parse(Request.Form["order[0][column]"]);
}
if (Request.Form["order[0][dir]"] != null)
{
sortDirection = Request.Form["order[0][dir]"];
}
int totalCount = 0;
PointUserFilter pointUserFilter = new PointUserFilter()
{
PageSize = length,
PageNumber = start,
SortDirection = sortDirection,
SortColumnNo = sortColumn
};
var getPointUsers = pointUserBl.GetPointUsers(pointUserFilter, out totalCount);
paginationModel.data = getPointUsers;
paginationModel.recordsFiltered = getPointUsers.Count();
paginationModel.recordsTotal = totalCount;
return Json(paginationModel, JsonRequestBehavior.AllowGet);
}
这些是值:
draw=1,getPointUsers.Count()=5,totalCount =6
我每页显示 5 条记录。所以它应该创建 2 页。但事实并非如此。
【问题讨论】:
-
@EhsanSajjad:根据那篇文章。
totalCount将始终是表中的总行数。和filteredCount将是应用过滤器后的总记录数。这意味着totalcount永远不会改变。我说的对吗? -
是的,你是对的
标签: c# jquery asp.net-mvc datatables