<PackageReference Include="Polly" Version="5.5.0" />

GenericCacheProvider<TCacheFormat>

class GenericCacheProvider<TCacheFormat> : ISyncCacheProvider<TCacheFormat>
Provides a strongly-typed wrapper over a non-generic CacheProvider.
using System; namespace Polly.Caching { internal class GenericCacheProvider<TCacheFormat> : ISyncCacheProvider<TCacheFormat> { private readonly ISyncCacheProvider _wrappedCacheProvider; internal GenericCacheProvider(ISyncCacheProvider nonGenericCacheProvider) { if (nonGenericCacheProvider == null) throw new ArgumentNullException("nonGenericCacheProvider"); _wrappedCacheProvider = nonGenericCacheProvider; } TCacheFormat ISyncCacheProvider<TCacheFormat>.Get(string key) { return (TCacheFormat)_wrappedCacheProvider.Get(key); } void ISyncCacheProvider<TCacheFormat>.Put(string key, TCacheFormat value, Ttl ttl) { _wrappedCacheProvider.Put(key, value, ttl); } } }