我正在使用以下方法来获取我的 jqgrid 子网格的数据,并且它的工作完全正常。
请注意,此方法用于实现服务器端排序和分页。
现在我的查询就像您在该行中看到的那样
List<SomeEntity> myList = _service.GetSomeData(id);
这里进行了数据库调用并获取了所有记录。
所以我不是很确定,所以我只是想知道这是否符合实现服务器端分页的最佳实践和
public JsonResult GetData(string folderId, string sidx, string sord, int page, int rows) {
int id = int.Parse(folderId);
List < SomeEntity > myList = _service.GetSomeData(id);
const int pageSize = 5;
// total
double totalPages = Math.Ceiling((double) myList.Count() / pageSize);
// sort
if (sord == "asc") {
myList = myList.OrderBy(m = > m.Name).ToList();
}
else {
myList = myList.OrderByDescending(m = > m.Name).ToList();
}
// paging
myList = myList.Skip((page - 1) * pageSize).Take(pageSize).ToList();
var jsonData = new {
total = totalPages, records = domainList.Count, page,
rows = myList
};
return Json(jsonData, JsonRequestBehavior.AllowGet);
}