public static List <SowVM> FilterData(ref DTSettingVM dtModel, IEnumerable <SowVM> sows) { //SEARCHING... if (!string.IsNullOrEmpty(dtModel.NumberFilter) && sows != null) { string s = dtModel.NumberFilter; sows = sows.Where(a => a.Number.Contains(s)).ToList(); } //SORTING... if (!(string.IsNullOrEmpty(dtModel.SortColumn) && string.IsNullOrEmpty(dtModel.SortColumnDir))) { if (sows != null) { switch (dtModel.SortColumnDir) { case "asc": sows = SortDataAscending(sows.ToList(), dtModel.SortColumn); break; case "desc": sows = SortDataDescending(sows.ToList(), dtModel.SortColumn); break; } } } dtModel.PageSize = dtModel.Lenght != null?int.Parse(dtModel.Lenght) : 0; dtModel.Skip = dtModel.Start != null?int.Parse(dtModel.Start) : 0; dtModel.RecordsTotal = sows.Count(); var data = sows.Skip(dtModel.Skip).Take(dtModel.PageSize).ToList(); return(data); }
public static DTSettingVM BindRequestForm(IFormCollection form) { var dtModel = new DTSettingVM(); dtModel.Draw = form["draw"].FirstOrDefault(); dtModel.Start = form["start"].FirstOrDefault(); dtModel.Lenght = form["length"].FirstOrDefault(); //sorting dtModel.SortColumn = form["columns[" + form["order[0][column]"].FirstOrDefault() + "][name]"].FirstOrDefault(); dtModel.SortColumnDir = form["order[0][dir]"].FirstOrDefault(); dtModel.NumberFilter = form["columns[0][search][value]"].FirstOrDefault(); return(dtModel); }