public async Task UpdateAsync <T>(string cacheKey, T item, CacheBaseSettings settings) { await RemoveAsync(cacheKey); var cache = JsonSerializer.Serialize(item); await SetCacheAsync(cacheKey, cache, settings); }
public async Task SetCacheAsync <T>(string cacheKey, T item, CacheBaseSettings settings) { var cache = JsonSerializer.Serialize(item); DistributedCacheEntryOptions cacheSettings = new() { AbsoluteExpiration = DateTime.Now.AddMinutes(settings.AbsoluteExpiration), SlidingExpiration = TimeSpan.FromMinutes(settings.SlidingExpiration) }; await _cachingPolicy.ExecuteAsync(() => _cache.SetStringAsync(cacheKey, cache, cacheSettings)); }