コード例 #1
0
        // GET: ManagerViews
        public async Task <IActionResult> Index(string managerSurname, string managerPost, int?pageNumber,
                                                string currentSurnameFilter, string currentPostFilter)
        {
            if (managerSurname != null || managerPost != null)
            {
                pageNumber = 1;
            }
            else
            {
                managerSurname = currentSurnameFilter;
                managerPost    = currentPostFilter;
            }
            ViewData["SurnameFilter"] = managerSurname;
            ViewData["PostFilter"]    = managerPost;
            var managers = await _managerViewRepository.GetAllAsync();

            if (!string.IsNullOrEmpty(managerSurname))
            {
                managers = managers.Where(s => s.Surname.ToUpper().Contains(managerSurname.ToUpper())).ToList();
            }
            if (!string.IsNullOrEmpty(managerPost))
            {
                managers = managers.Where(s => s.Post.ToUpper().Contains(managerPost.ToUpper())).ToList();
            }
            var pageSize = 3;

            return(View(PaginatedList <ManagerView> .Create(managers, pageNumber ?? 1, pageSize)));
        }