Beispiel #1
0
        public List <Country> LoadAllOrderedByName()
        {
            string cacheKey = _cacheHandler.GetCacheKey(cacheKeyPrefix, "AllOrderedByName");

            if (TryGetAllOrderedByNameFromCache(cacheKey, out var countries))
            {
                return(countries);
            }
            var loadLock = _countriesCacheInfo.CacheLocks.GetOrAdd(_cacheHandler.GetCacheKey(cacheKeyPrefix, "AllOrderedByName", "Load"), new object());

            lock (loadLock)
            {
                //Was it added to the cache while wating for lock release?
                if (TryGetAllOrderedByNameFromCache(cacheKey, out countries))
                {
                    return(countries);
                }
                var queryParams = new BaseQueryParams
                {
                    PageIndex      = 0,
                    PageSize       = 10000,
                    OrderByColumns = new List <OrderByColumn> {
                        new OrderByColumn {
                            ColumnName = "Name"
                        }
                    }
                };
                countries = base.GetAll(queryParams);
                if (countries != null)
                {
                    _countriesCacheInfo.AddToCache(countries, cacheKey);
                }
                return(countries);
            }
        }
 protected IOrderedQueryable <T> SortQuery <T>(IQueryable <T> query, BaseQueryParams <T> filter)
     where T : IDomainEntity
 {
     return(filter.Direction == Sort.Direction.Asc
         ? query.OrderBy(filter.SortProp)
         : query.OrderByDescending(filter.SortProp));
 }
Beispiel #3
0
 public async Task <ActionResult <List <Country> > > GetByParamsAsync([FromBody] BaseQueryParams queryParams)
 {
     try
     {
         _logger.LogTrace("Entered CountriesController.GetByParamsAsync");
         _logger.LogDebug("Entered CountriesController.GetByParamsAsync");
         _logger.LogInformation("Entered CountriesController.GetByParamsAsync");
         _logger.LogWarning("Entered CountriesController.GetByParamsAsync");
         _logger.LogError("Entered CountriesController.GetByParamsAsync");
         _logger.LogCritical("Entered CountriesController.GetByParamsAsync");
         return(await _countriesManager.GetAllAsync(queryParams, _cancellationToken));
     }
     catch (Exception exception)
     {
         _logger.LogError("Entered CountriesController.GetByParamsAsync", exception);
         System.Diagnostics.Debugger.Log(1, "Error", exception.Message);
         return(BadRequest());
     }
 }
Beispiel #4
0
        public static IEnumerable <T> ApplyBaseQuery <T>(this IEnumerable <T> query, BaseQueryParams queryParams)
        {
            if (queryParams.Page != null && queryParams.PageSize != null)
            {
                int page     = queryParams.Page.Value - 1;
                int pageSize = queryParams.PageSize.Value;

                if (page < 0)
                {
                    page = 0;
                }

                if (pageSize < 0)
                {
                    pageSize = 10;
                }

                int skip = page * pageSize;

                query = query.Skip(skip).Take(pageSize);
            }

            return(query);
        }
Beispiel #5
0
 public async Task <List <TEntity> > GetAllAsync(BaseQueryParams queryParams, CancellationToken cancellationToken)
 {
     return(await _context.Set <TEntity>().OrderByColumns(queryParams.OrderByColumns)
            .Skip(queryParams.PageIndex * queryParams.PageSize)
            .Take(queryParams.PageSize).ToListAsync(cancellationToken));
 }
Beispiel #6
0
 public List <TEntity> GetAll(BaseQueryParams queryParams)
 {
     return(_context.Set <TEntity>().OrderByColumns(queryParams.OrderByColumns).Skip(queryParams.PageIndex * queryParams.PageSize).Take(queryParams.PageSize).ToList());
 }
Beispiel #7
0
 public virtual async Task <List <TEntity> > GetAllAsync(BaseQueryParams queryParams, CancellationToken cancellationToken)
 {
     return(await _repository.GetAllAsync(queryParams, cancellationToken));
 }
Beispiel #8
0
 public virtual List <TEntity> GetAll(BaseQueryParams queryParams)
 {
     return(_repository.GetAll(queryParams));
 }