// GET: Books //[UnitOfWork]//启用工作单元 public async Task <ActionResult> Index(string SeachText, string currentFilter, string sortOrder, int?page) { ViewBag.NameSortParm = sortOrder; var pageSize = 3;//页大小 if (SeachText != null) { page = 1; } else { SeachText = currentFilter; } var pageNumber = page ?? 1;//第几页 ViewBag.CurrentFilter = SeachText; PageInput pageInput = new PageInput() { pageIndex = pageNumber, pageMax = pageSize }; SeachInput seachInput = new SeachInput() { SeachBookName = SeachText }; OrderInput orderInput = new OrderInput() { OrderName = ViewBag.NameSortParm }; var BookList = await _bookAppService.GetAllAsync(pageInput, seachInput, orderInput); var onePageOfBook = new StaticPagedList <BookListoutput>(BookList.Items, pageNumber, pageSize, BookList.TotalCount); //将分页结果放入ViewBag供View使用 ViewBag.OnePageOfTasks = onePageOfTasks; //pageNumber, pageSize, counts 页索引 页大小 总数 ViewBag.OnePageOfTasks = onePageOfBook; return(View()); }
[AbpAuthorize(PermissionNames.Pages_Book_See)]//特性方式权限检查 public async Task <PagedResultDto <BookListoutput> > GetAllAsync(PageInput pageInput, SeachInput seachInput, OrderInput orderInput) { // PermissionChecker.Authorize(PermissionNames.Pages_Book_See);权限检查 using (_unitOfWorkManager.Current.DisableFilter(AbpDataFilters.SoftDelete))//禁用默认过滤器 { var bookList = await _bookRepository.GetAll().Include(p => p.User).ToListAsync(); if (!string.IsNullOrEmpty(seachInput.SeachBookName)) { bookList = bookList.Where(p => p.BookName.Contains(seachInput.SeachBookName)).ToList(); } if (orderInput.OrderName == "Desc") { bookList = bookList.OrderByDescending(p => p.BookName).ToList(); } else { bookList = bookList.OrderBy(p => p.BookName).ToList(); } var booksCount = bookList.Count(); var taskList = bookList.Skip((pageInput.pageIndex - 1) * pageInput.pageMax).Take(pageInput.pageMax).ToList(); return(new PagedResultDto <BookListoutput>(booksCount, taskList.MapTo <List <BookListoutput> >() )); } // var bookList = await _bookRepository.GetAll().Include(p => p.User).ToListAsync(); }