2017-02-23 39 views
0

У меня проблемы с разбиением на страницы на стороне сервера в jqgrid с использованием mvc. Вот мой код контроллера.Как решить проблему разбивки страницы на стороне сервера в JQGrid с помощью mvc4

[HttpGet] 
public JsonResult GetAllStudents(JqGridRequest jRequest) { 
    var Records = from a in entities.studentdetails.ToList() select new { 
     a.ID, 
     a.Name, 
     a.DOB 
    }; 
    int pageIndex = Convert.ToInt32(jRequest.PageIndex); 
    int pageSize = jRequest.RecordsCount; 
    int startRow = (pageIndex * pageSize) + 1; 
    int totalRecords = Records.Count(); 
    int totalPages = (int)Math.Ceiling((float)totalRecords/(float)pageSize); 
    Records = Records.Skip(pageIndex * pageSize).Take(pageSize).ToArray();  
    if (jRequest.Searching) { 
     int sId = Convert.ToInt32(jRequest.SearchingFilters.Filters[0].SearchingValue); 
     //string sName = jRequest.SearchingFilters.Filters[0].SearchingValue; 
     Records = entities.studentdetails.Select(a => new { 
      a.ID, 
      a.Name, 
      a.DOB 
     }).Where(p => p.ID == sId); 
    } 
    else { 
     Records = entities.studentdetails.Select(a => new { 
      a.ID, 
      a.Name, 
      a.DOB 
     }); 
    } 
    var jsonData = new { 
     total = totalPages, 
     page = pageIndex, 
     records = totalRecords, 
     rows = Records 
    }; 
    return Json(jsonData, JsonRequestBehavior.AllowGet); 
} 
+1

* "Я сталкиваюсь с проблемами на стороне сервера пагинации ..." * - Вы должны указать, в чем проблема. – jww

ответ

0

Вот некоторые изменения, которые я сделал, и проблема была решена.

1- int pageIndex = Convert.ToInt32 (jRequest.PageIndex) + 1;

2- записей =

entities.studentdetails.Select(
       a => new 
       { 
        a.ID, 
        a.Name, 
        a.DOB 
       })**.OrderBy(s => s.ID).Skip((pageIndex-1) * pageSize).Take(pageSize).ToArray();** 
Смежные вопросы