Innovabit.DotNet.Interceptors.Caching.Redis
1.0.0.96
dotnet add package Innovabit.DotNet.Interceptors.Caching.Redis --version 1.0.0.96
NuGet\Install-Package Innovabit.DotNet.Interceptors.Caching.Redis -Version 1.0.0.96
<PackageReference Include="Innovabit.DotNet.Interceptors.Caching.Redis" Version="1.0.0.96" />
<PackageVersion Include="Innovabit.DotNet.Interceptors.Caching.Redis" Version="1.0.0.96" />
<PackageReference Include="Innovabit.DotNet.Interceptors.Caching.Redis" />
paket add Innovabit.DotNet.Interceptors.Caching.Redis --version 1.0.0.96
#r "nuget: Innovabit.DotNet.Interceptors.Caching.Redis, 1.0.0.96"
#:package Innovabit.DotNet.Interceptors.Caching.Redis@1.0.0.96
#addin nuget:?package=Innovabit.DotNet.Interceptors.Caching.Redis&version=1.0.0.96
#tool nuget:?package=Innovabit.DotNet.Interceptors.Caching.Redis&version=1.0.0.96
Innovabit.DotNet.Interceptors.Caching.Redis
Distributed cache store for Innovabit.DotNet.Interceptors
caching, backed by Redis through Microsoft.Extensions.Caching.StackExchangeRedis
(IDistributedCache). Cached results are shared across every process and instance pointing at the
same Redis, so they survive restarts and scale out.
services
.AddInterceptors()
.AddRedisCache(o =>
{
o.Configuration = "localhost:6379";
o.InstanceName = "myapp:";
})
.ConfigureCacheDefaults(d => d.DurationSeconds = 300); // optional
services.AddScopedWithInterception<IPriceService, PriceService>();
public class PriceService : IPriceService
{
[Cache(DurationSeconds = 300)]
public Task<Quote> GetQuoteAsync(string symbol) => _api.FetchAsync(symbol);
}
Values are serialized to bytes with the configured ICacheSerializer (default: System.Text.Json)
before being stored, so cached return types must be serializable. Swap the format with
UseCacheSerializer<T>().
AddRedisCache(...) registers the caching interceptor, the StackExchange.Redis IDistributedCache
and the Redis ICacheStore. See the
Caching.Abstractions
README for the [Cache] options and extension points.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Innovabit.DotNet.Interceptors.Caching.Abstractions (>= 1.0.0.96)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.12)
-
net8.0
- Innovabit.DotNet.Interceptors.Caching.Abstractions (>= 1.0.0.96)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.12)
-
net9.0
- Innovabit.DotNet.Interceptors.Caching.Abstractions (>= 1.0.0.96)
- Microsoft.Extensions.Caching.StackExchangeRedis (>= 10.0.12)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.