public ActionResult GetScheduler(int pageIndex, int pageSize, string sortField = "DepartureTime", string sortOrder = "desc") { IEnumerable <SchedulerDb.ScheduleTbl> ScheduleList = null; IQueryable <SchedulerDb.ScheduleTbl> Query = null; IEnumerable <SchedulerDb.Model.Schedule> ResultList = null; int itemCount = 0; var param = sortField; var propertyInfo = typeof(SchedulerDb.ScheduleTbl).GetProperty(param); int skip = (pageIndex - 1) * pageSize; try { using (_Repo) { Query = _Repo.GetSchedule(); itemCount = Query.Count(); switch (sortField) { case "DepartureTime": if (sortOrder == "asc") { ScheduleList = Query.OrderBy(S => S.DepartureTime); } else if (sortOrder == "desc") { ScheduleList = Query.OrderByDescending(S => S.DepartureTime); } break; default: ScheduleList = Query.OrderByDescending(S => S.DepartureTime); break; } ResultList = ScheduleList.Skip(skip) .Take(pageSize).ToList().Select(T => _ModelMapping.GetSchedule(T)); } } catch (Exception ex) { } var Result = new { data = ResultList, itemCount = itemCount }; return(Json(Result, JsonRequestBehavior.AllowGet)); }
public IHttpActionResult GetSchedule() { List <SchedulerDb.Model.Schedule> sch = new List <SchedulerDb.Model.Schedule>(); IQueryable <SchedulerDb.ScheduleTbl> Query = null; IEnumerable <SchedulerDb.Model.Schedule> ResultList = null; try { Query = _Repo.GetSchedule(); ResultList = Query.ToList().Select(T => _ModelMapping.GetSchedule(T)); }catch (Exception ex) { } var res = ResultList.AsQueryable(); return(Ok(new { results = res })); }