public ActionResult SearchIdea(IdeaSearchFilter filter) { if (filter == null) { filter = new IdeaSearchFilter(); } filter.AuthorId = HttpContext.User.FindFirst(JwtClaimIdentifiers.Id)?.Value; return(Ok(ideaService.Search(filter))); }
public AggregateContent <IdeaViewModel> Search(IdeaSearchFilter filter) { var query = uow.IdeasRepository .GetAll(); if (filter.IsUserAuthor) { query = query.Where(idea => (idea.AuthorId == filter.AuthorId)); } return(new AggregateContent <IdeaViewModel> { Source = Mapper.Map <IEnumerable <Idea>, IEnumerable <IdeaViewModel> >( query .Skip((filter.Page - 1) * filter.PageSize) .Take(filter.PageSize) .OrderByDescending(item => item.DateOfCreation) .ToList()), Total = query.Count() }); }