public ActionResult List(DataSourceRequest command, SlideSearchCondition condition) { condition.PageSize = command.PageSize; condition.PageNumber = command.Page - 1; var slides = _slideService.SearchSlides(condition); var gridModel = new DataSourceResult() { Data = slides.DataSource, Total = slides.TotalItems }; return(Json(gridModel)); }
public PageList <SlideModel> SearchSlides(SlideSearchCondition condition) { var query = _shoppingContext.Slides.AsNoTracking().AsQueryable(); if (!string.IsNullOrEmpty(condition.Name)) { query = query.Where(p => p.Name.ToLower().Contains(condition.Name.ToLower())); } if (condition.DateFrom.HasValue) { query = query.Where(p => p.CreatedDateTime >= condition.DateFrom.Value); } if (condition.DateTo.HasValue) { var dateTo = condition.DateTo.Value.AddDays(1); query = query.Where(p => p.CreatedDateTime < dateTo); } var Slides = query.OrderBy(o => o.CreatedDateTime).Skip(condition.PageSize * condition.PageNumber).Take(condition.PageSize).ToList(); return(new PageList <SlideModel>(Mapper.Map <List <SlideModel> >(Slides), query.Count())); }
public ActionResult List() { var model = new SlideSearchCondition(); return(View(model)); }