public async Task <IActionResult> GetTopics([FromQuery] TopicParams topicParams) { var topics = await _ratingRepo.GetTopics(topicParams); var topicsToReturn = _mapper.Map <IEnumerable <TopicToReturnList> >(topics); Response.AddPagination(topics.CurrentPage, topics.PageSize, topics.TotalCount, topics.TotalPages); return(Ok(topicsToReturn)); }
public async Task <PagedList <RatingTopic> > GetTopics(TopicParams topicParams) { var topics = _context.RatingTopics.Where(t => t.Visible == true).OrderByDescending(t => t.RatingLikes.Sum(l => l.Value)); //.AsQueryable(); return(await PagedList <RatingTopic> .CreateAsync(topics, topicParams.PageNumber, topicParams.PageSize)); }