Mediarq.Caching
1.5.1
dotnet add package Mediarq.Caching --version 1.5.1
NuGet\Install-Package Mediarq.Caching -Version 1.5.1
<PackageReference Include="Mediarq.Caching" Version="1.5.1" />
<PackageVersion Include="Mediarq.Caching" Version="1.5.1" />
<PackageReference Include="Mediarq.Caching" />
paket add Mediarq.Caching --version 1.5.1
#r "nuget: Mediarq.Caching, 1.5.1"
#:package Mediarq.Caching@1.5.1
#addin nuget:?package=Mediarq.Caching&version=1.5.1
#tool nuget:?package=Mediarq.Caching&version=1.5.1
Mediarq.Caching
Memoize the response of a request that implements ICacheableRequest — in-memory (IMemoryCache) or
distributed (IDistributedCache / Redis). On a cache hit the handler doesn't run.
dotnet add package Mediarq.Caching
Usage
builder.Services.AddMediarqCaching(); // in-memory (registers IMemoryCache for you)
// or distributed:
builder.Services.AddDistributedMemoryCache(); // or AddStackExchangeRedisCache(...)
builder.Services.AddMediarqDistributedCaching();
public record GetOrder(Guid Id) : IQuery<Result<OrderDto>>, ICacheableRequest
{
public string CacheKey => $"orders:{Id}";
public TimeSpan? CacheDuration => TimeSpan.FromSeconds(30);
}
Call after AddMediarq / AddMediarqCore. Distributed caching serializes the response to JSON —
Result / Result<T> round-trip out of the box; keep your DTOs serializable. On Native AOT, register a
source-generated IMediarqCacheSerializer.
Learn more
Wiring extensions · Full README
MIT © Nicolas Rouffart
| 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
- Mediarq.Core (>= 1.5.1)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
-
net8.0
- Mediarq.Core (>= 1.5.1)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
-
net9.0
- Mediarq.Core (>= 1.5.1)
- Microsoft.Extensions.Caching.Memory (>= 8.0.1)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Mediarq.Caching:
| Package | Downloads |
|---|---|
|
Mediarq
Lean meta-package bundling Mediarq.Core and the lightweight extensions: ASP.NET Core, FluentValidation, DataAnnotations, Caching, Diagnostics and UnitOfWork. Heavy or opinionated integrations (EntityFrameworkCore, OpenTelemetry, MassTransit, Polly) ship as separate packages — install them explicitly when you need them. |
|
|
Mediarq.Idempotency
Idempotency pipeline behavior for Mediarq: an IIdempotentRequest whose result is cached by idempotency key in an IDistributedCache, so retries return the stored result instead of re-running the handler. |
GitHub repositories
This package is not used by any popular GitHub repositories.