CacheOrchestrator 2.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package CacheOrchestrator --version 2.0.0
                    
NuGet\Install-Package CacheOrchestrator -Version 2.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="CacheOrchestrator" Version="2.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="CacheOrchestrator" Version="2.0.0" />
                    
Directory.Packages.props
<PackageReference Include="CacheOrchestrator" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add CacheOrchestrator --version 2.0.0
                    
#r "nuget: CacheOrchestrator, 2.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package CacheOrchestrator@2.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=CacheOrchestrator&version=2.0.0
                    
Install as a Cake Addin
#tool nuget:?package=CacheOrchestrator&version=2.0.0
                    
Install as a Cake Tool

CacheOrchestrator

CacheOrchestrator is domain-based caching for ASP.NET Core: define rules once per domain in configuration, then apply them on endpoints with a single attribute or extension. It orchestrates Output Cache (OC), FusionCache (L1/L2), and client Cache-Control (CC) under the same model.

The package targets .NET 8 and .NET 10.

Install

dotnet add package CacheOrchestrator

Related packages, when you need them:

Register

builder.Services.AddCacheOrchestrator(builder.Configuration);

var app = builder.Build();
app.UseCacheOrchestrator();

app.MapGet("/api/products", async (HttpContext http, IDomainFusionCache cache) =>
{
    var data = await cache.GetOrSetAsync(http, LoadProductsAsync);
    return Results.Json(data);
})
.CacheOutputWithDomain("catalog");

Declare the catalog domain under "Cache" in appsettings.json. On a controller, use [CacheDomain("catalog")].

Documentation

License

MIT — LICENSE.md

Product 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 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on CacheOrchestrator:

Package Downloads
CacheOrchestrator.Redis

Redis backends for CacheOrchestrator: Output Cache store, FusionCache L2 + backplane, and health probes.

CacheOrchestrator.EFCore.Invalidation

EF Core SaveChanges hook for CacheOrchestrator: map CLR types to (domain, entityKind) and purge entity tags after a successful save.

CacheOrchestrator.Bus

HTTP cluster command bus for CacheOrchestrator: invalidate, Version, and TTL commands across instances (Static or ServiceDiscovery membership).

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.1.0 136 8/15/2026
2.0.0 130 8/13/2026
1.0.0 106 8/8/2026
1.0.0-rc.2 62 8/8/2026

CacheOrchestrator 2.0.0

Breaking: entity identity is (domain, entityKind, resourceId). Use GetOrSetEntityAsync and InvalidateEntityAsync(domain, entityKind, id). Tags are entity:{domain}:{entityKind}:{id}.

New packages: CacheOrchestrator.Bus (HTTP command bus) and CacheOrchestrator.EFCore.Invalidation (purge after SaveChanges).

Also: Admin API (opt-in, MapCacheOrchestratorAdmin), Output Cache auth-bypass header fix, integration tests on net8 and net10, rewritten README and docs.

Full notes: https://github.com/amarinsek/CacheOrchestrator/blob/main/CHANGELOG.md