public IEnumerable<ExceptionInfoListViewModel> Search(ExceptionInfoSearchModel searchModel)
 {
     var searchEngine = new ExceptionInfoSearchEngine();
     var logRegels = searchEngine.Search(searchModel).ToList();
     return logRegels.ConvertAll(input => input.ConvertTo<ExceptionInfoListViewModel>());
 }
 public int Count(ExceptionInfoSearchModel searchModel)
 {
     var searchEngine = new ExceptionInfoSearchEngine();
     searchModel.Take = 0;
     return searchEngine.Search(searchModel).Count();
 }
        public IQueryable<ExceptionInfo> Search(ExceptionInfoSearchModel searchModel)
        {
            var query = new ThisDbContext().ExceptionInfo.AsQueryable();

            if (!string.IsNullOrWhiteSpace(searchModel.Message))
                query = query.Where(c => c.Message.Contains(searchModel.Message));

            query = !string.IsNullOrWhiteSpace(searchModel.SortField)
                ? query.OrderBy(searchModel.SortField, searchModel.SortAsc)
                : query.OrderBy(c => c.Created);

            query = query.Skip(searchModel.Skip);

            if (searchModel.Take > 0)
                query = query.Take(searchModel.Take);

            return query;
        }