示例#1
0
        public Task <BaseFindResponse <Media> > FindAsync(MediaFindRequest request)
        {
            return(Task.Run(() =>
            {
                var query = context.MediaAsQueryable;
                if (!string.IsNullOrEmpty(request.Name))
                {
                    query = query.Where(a => a.Title.ToLowerInvariant().Contains(request.Name.ToLowerInvariant()));
                }
                if (request.Type.HasValue)
                {
                    query = query.Where(a => a.Type == request.Type);
                }

                var response = query.OrderByDescending(a => a.CreatedDate)
                               .Skip(request.Skip)
                               .Take(request.PageSize)
                               .ToList();

                return new BaseFindResponse <Media>
                {
                    Results = response,
                    TotalRecords = query.Count()
                };
            }));
        }
示例#2
0
 public Task <BaseFindResponse <Media> > FindAsync(MediaFindRequest request)
 {
     return(_mediaRepository.FindAsync(request));
 }