public IEnumerable <District> Districts(long provinceId) { try { List <District> districtsCache = _memoryCache.GetOrCreate <List <District> >("DISTRICT_CACHE", TimeSpan.FromSeconds(300), _locationService.Districts); return(districtsCache.Where(x => x.ProvinceId == provinceId)); } catch (Exception ex) { throw new ArgumentException("Not found"); } }
public async Task <User> GetById(Guid Id) { var cacheKey = BuildCacheKey(Id); return(await _cache.GetOrCreate(cacheKey, async() => { var user = _dataContext.AppUsers.FirstOrDefault(x => x.Id == Id); return user; })); }