public Task <BaseFindResponse <Post> > FindAsync(PostFindRequest request) { return(Task.Run(() => { var query = context.PostsAsQueryable; if (request.CategoryId.HasValue()) { query = query.Where(a => a.CategoryId == request.CategoryId); } if (!string.IsNullOrEmpty(request.Title)) { query = query.Where(a => a.Title.ToLowerInvariant().Contains(request.Title.ToLowerInvariant())); } var response = query.OrderByDescending(a => a.CreatedDate) .Skip(request.Skip) .Take(request.PageSize) .ToList(); return new BaseFindResponse <Post> { Results = response, TotalRecords = query.Count() }; })); }
public Task <BaseFindResponse <Post> > FindAsync(PostFindRequest request) { return(_blogRepository.FindAsync(request)); }