public IQueryable <Quiz> GetBy(QuizFilter filter, IQueryable <Quiz> quizzes = null, bool?descending = null, int?count = null) { var list = quizzes ?? GetPublicQuizzes(); var descendingValue = descending.HasValue ? descending.Value : true; IQueryable <Quiz> topList; switch (filter) { case QuizFilter.Rating: topList = GetByRating(descendingValue, list); break; case QuizFilter.Newest: topList = GetByCreationDate(descendingValue, list); break; case QuizFilter.Level: topList = GetByLevel(descendingValue, list); break; default: throw new ArgumentOutOfRangeException(); } if (count.HasValue) { return(topList.Take(count.Value)); } return(topList); }
public QuizListRequestBuilder(QuizFilter filter, FilterPager pager) : this() { this.Filter = filter; this.Pager = pager; }
public static QuizListRequestBuilder List(QuizFilter filter = null, FilterPager pager = null) { return(new QuizListRequestBuilder(filter, pager)); }
public virtual ActionResult List(bool showProject = false, QuizFilter quizFilter = null) { quizFilter = quizFilter ?? new QuizFilter(); var model = new QuizzesListViewModel() { ShowProject = showProject, Quizzes = QuizService.GetAll(Query.ForQuiz(quizFilter).Include(x => x.Project())) }; return View(model); }