public ActionResult Index(SearchBanksModel search, int page = 1) { // Return all Banks // If not a post-back (i.e. initial load) set the searchModel to session if (Request.Form.Count <= 0) { if (search.IsEmpty() && Session["SearchBanksModel"] != null) { search = (SearchBanksModel)Session["SearchBanksModel"]; } } var helper = new BankHelper(); var model = helper.GetBankList(search, search.ParsePage(page)); Session["SearchBanksModel"] = search; //(search); return(View(model)); }
public BankListViewModel GetBankList(SearchBanksModel searchModel, int page = 1) { int pageSize = 20; if (page < 1) { page = 1; } IEnumerable <Bank> records = db.Banks.ToList(); // Remove any default information //searchModel.ParseRouteInfo(); if (!String.IsNullOrEmpty(searchModel.Name)) { string name = searchModel.Name.ToLower(); records = records.Where(x => x.Name.ToLower().Contains(name)); } records = records.Where(x => !x.DeActivated.HasValue); return(new BankListViewModel { Banks = records .OrderByDescending(o => o.BankId) .Skip((page - 1) * pageSize) .Take(pageSize), SearchModel = searchModel, PagingInfo = new PagingInfo { CurrentPage = page, PageSize = pageSize, TotalItems = records.Count() } }); }