Exemplo n.º 1
0
        public Result List(QuizQuestionAdminFilterDto dto)
        {
            var result = _actionFactory.Action(dto.Action)?.Apply(dto.Ids) ?? new Result();

            if (!result.Success)
            {
                return(result);
            }

            var query = _quizQuestionRepository.AsNoTracking;

            query = new QuizQuestionAdminFilter(query, dto).FilteredQuery();
            query = new QuizQuestionAdminListOrder(query, dto).OrderByQuery();

            result.SetPaging(dto?.Page ?? 1, dto?.Size ?? 10, query.Count());

            result.Data = query
                          .Select(s => new
            {
                s.Id,
                s.Question,
                s.QuizId,
                QuizTitle = s.Quiz.Title,
                s.IsActive
            })
                          .Skip((result.Paging.Page - 1) * result.Paging.Size)
                          .Take(result.Paging.Size);

            return(result);
        }
 public IHttpActionResult Get([FromUri] QuizQuestionAdminFilterDto dto)
 {
     return(Result(_quizQuestionAdminService.List(dto)));
 }