public async Task <ActionResult> Index([FromQuery] QueryParams queryParams) { string searchString = string.Empty; int pageIndex = 1; int itemsPerPage = Constants.ITEMS_PER_PAGE; if (queryParams != null) { searchString = queryParams.SearchString; pageIndex = queryParams.PageNumber; itemsPerPage = queryParams.ItemsPerPage ?? itemsPerPage; } var paginatedDirectors = await _mediator.Send(new GetPaginatedDirectorsQuery(searchString, pageIndex, itemsPerPage)); var directorIndexViewModel = new DirectorIndexViewModel { Directors = _mapper.Map <List <DirectorViewModel> >(paginatedDirectors.AsEnumerable <Director>()), PaginationInfo = new ViewModels.PaginationInfoViewModel { PageIndex = paginatedDirectors.PageIndex, ItemsPerPage = paginatedDirectors.ItemsPerPage, TotalPages = paginatedDirectors.TotalPages, HasNextPage = paginatedDirectors.HasNextPage, HasPreviousPage = paginatedDirectors.HasPreviousPage }, SearchString = searchString }; return(View(directorIndexViewModel)); }
// GET: Directors public ActionResult Index() { var model = new DirectorIndexViewModel() { Directors = db.Directors.ToList() }; return(View(model)); }