<PackageReference Include="Polly" Version="5.1.1-v5-x-cachealpha0001" />

CachePolicy<TResult>

public class CachePolicy<TResult> : Policy<TResult>
A cache policy that can be applied to the results of delegate executions.
using Polly.Utilities; using System; using System.Linq; using System.Threading; using System.Threading.Tasks; namespace Polly.Caching { public class CachePolicy<TResult> : Policy<TResult> { internal CachePolicy(ICacheProvider<TResult> syncCacheProvider, ITtlStrategy ttlStrategy, ICacheKeyStrategy cacheKeyStrategy) : base((Func<Func<Context, CancellationToken, TResult>, Context, CancellationToken, TResult>)((Func<Context, CancellationToken, TResult> action, Context context, CancellationToken cancellationToken) => CacheEngine.Implementation<TResult>(syncCacheProvider, ttlStrategy, cacheKeyStrategy, action, context, cancellationToken)), PredicateHelper.EmptyExceptionPredicates, Enumerable.Empty<ResultPredicate<TResult>>()) { } internal CachePolicy(ICacheProviderAsync<TResult> asyncCacheProvider, ITtlStrategy ttlStrategy, ICacheKeyStrategy cacheKeyStrategy) : base((Func<Func<Context, CancellationToken, Task<TResult>>, Context, CancellationToken, bool, Task<TResult>>)((Func<Context, CancellationToken, Task<TResult>> func, Context context, CancellationToken cancellationToken, bool continueOnCapturedContext) => CacheEngine.ImplementationAsync<TResult>(asyncCacheProvider, ttlStrategy, cacheKeyStrategy, func, context, cancellationToken, continueOnCapturedContext)), PredicateHelper.EmptyExceptionPredicates, Enumerable.Empty<ResultPredicate<TResult>>()) { } } }