public async Task <IActionResult> Index(int page = 1, bool archived = false) { var filter = new BaseFilter(page) { IsActive = !archived }; var dashboardContentList = await _dashboardContentService.GetPaginatedListAsync(filter); PaginateViewModel paginateModel = new PaginateViewModel() { ItemCount = dashboardContentList.Count, CurrentPage = page, ItemsPerPage = filter.Take.Value }; if (paginateModel.MaxPage > 0 && paginateModel.CurrentPage > paginateModel.MaxPage) { return(RedirectToRoute( new { page = paginateModel.LastPage ?? 1 })); } var viewModel = new DashboardListViewModel() { DashboardContents = dashboardContentList.Data.ToList(), PaginateModel = paginateModel }; if (viewModel.DashboardContents.FirstOrDefault()?.StartTime < _dateTimeProvider.Now && archived == false) { viewModel.HighlightFirst = true; } return(View(viewModel)); }