/// <summary> /// Finds paged questions. /// </summary> /// <param name="questionFilterDto">The filtering DTO</param> /// <returns>The Question DTO page</returns> internal IPagedList <QuestionDto> FindPaged(QuestionFilterDto questionFilterDto) { return(_modelContext.Set <Question>() .OrderBy(x => x.QuestionMark) .Select(x => new QuestionDto() { Id = x.Id, QuestionMark = x.QuestionMark, Answer = x.Answer }) .ToPagedList(questionFilterDto.Page, questionFilterDto.PageSize)); }
protected override IQuery <Question> ApplyWhereClause(IQuery <Question> query, QuestionFilterDto filter) { if (filter.Keywords == null || !filter.Keywords.Any()) { return(query); } var predicates = new List <IPredicate>(filter.Keywords .Select(keyword => new SimplePredicate( nameof(Question.Text), ValueComparingOperator.StringContains, keyword))); var predicate = new CompositePredicate(predicates, LogicalOperator.OR); return(query.Where(predicate)); }
public IPagedList <QuestionDto> ReadAdministrationPaged(QuestionFilterDto questionFilterDto) { return(_questionDao.FindPaged(questionFilterDto)); }
public ActionResult PagedList(QuestionFilterDto questionFilterDto) { ViewBag.FilterDto = questionFilterDto; return(PartialView(WebConstants.VIEW_PAGED_LIST, GetService().ReadAdministrationPaged(questionFilterDto))); }