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)); }
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()); } }
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); }
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)); }
public List <TEntity> GetAll(BaseQueryParams queryParams) { return(_context.Set <TEntity>().OrderByColumns(queryParams.OrderByColumns).Skip(queryParams.PageIndex * queryParams.PageSize).Take(queryParams.PageSize).ToList()); }
public virtual async Task <List <TEntity> > GetAllAsync(BaseQueryParams queryParams, CancellationToken cancellationToken) { return(await _repository.GetAllAsync(queryParams, cancellationToken)); }
public virtual List <TEntity> GetAll(BaseQueryParams queryParams) { return(_repository.GetAll(queryParams)); }