public IActionResult Index( string currentFilter, string searchString, int?pageNumber) { if (searchString != null) { pageNumber = 1; } else { searchString = currentFilter; } ViewData["CurrentFilter"] = searchString; var persons = new List <Person>(); if (!String.IsNullOrEmpty(searchString)) { persons = _uow.Persons.FindPersons(searchString).ToList(); } else { persons = _uow.Persons.GetAll().ToList(); } var personViewModels = new List <PersonViewModel>(); foreach (var person in persons.OrderByDescending(p => p.Id)) { personViewModels.Add(PersonHelper.ConvertToViewModel(person)); } int pageSize = 10; return(View(PaginatedList <PersonViewModel> .GetPage(personViewModels, pageNumber ?? 1, pageSize))); }