public async Task <IEnumerable <SubjectList> > GetSubjects(SubjectSearch specification = null) { specification ??= new SubjectSearch(); IQueryable <Subject> query = _dbContext.Subjects; // Szűrés megvalósítása if (specification.Credit != null && int.TryParse(specification.Credit, out int n)) { query = query.Where(b => b.Credit == n); } if (!string.IsNullOrWhiteSpace(specification?.SearchText)) { query = query.Where(b => b.Description.Contains(specification.SearchText) || b.Title.Contains(specification.SearchText)); } // Rendezés if (specification.IsAsc) { query = query.OrderBy(b => b.Title); } else { query = query.OrderByDescending(b => b.Title); } query = query.Take(10).Skip((specification.Page) * 10); return(await query.Select(x => new SubjectList() { Id = x.Id, Credit = x.Credit, Description = x.Description, Title = x.Title, Creator = x.User.Name }).ToListAsync()); }
/// <summary> /// 搜索科目信息 /// </summary> /// <param name="pageSize"></param> /// <param name="pageIndex"></param> /// <param name="keyword"></param> /// <param name="status"></param> /// <returns></returns> public PagerModel <Subjects> Search(int pageSize, int pageIndex, string keyword, int?status) { SubjectSearch search = new SubjectSearch(pageIndex, pageSize, keyword, status); return(search.Search()); }