CacheOrchestrator.Core
3.0.0-beta.3
dotnet add package CacheOrchestrator.Core --version 3.0.0-beta.3
NuGet\Install-Package CacheOrchestrator.Core -Version 3.0.0-beta.3
<PackageReference Include="CacheOrchestrator.Core" Version="3.0.0-beta.3" />
<PackageVersion Include="CacheOrchestrator.Core" Version="3.0.0-beta.3" />
<PackageReference Include="CacheOrchestrator.Core" />
paket add CacheOrchestrator.Core --version 3.0.0-beta.3
#r "nuget: CacheOrchestrator.Core, 3.0.0-beta.3"
#:package CacheOrchestrator.Core@3.0.0-beta.3
#addin nuget:?package=CacheOrchestrator.Core&version=3.0.0-beta.3&prerelease
#tool nuget:?package=CacheOrchestrator.Core&version=3.0.0-beta.3&prerelease
CacheOrchestrator.Core
CacheOrchestrator is a multi-tier cache coordination and synchronized invalidation library for .NET.
This package is the HTTP-free core: domain options, Version, portable DataCache policy, entity footprint/tags, ICacheOrchestrator, ICacheOrchestratorManagement, invalidation, and cluster contracts. Use it from class libraries and workers. It does not reference ASP.NET or a concrete cache engine.
Install
dotnet add package CacheOrchestrator.Core --prerelease
A reusable library stops there. A standalone worker also installs one Data Cache provider, for example CacheOrchestrator.FusionCache.
Without a provider, startup and health remain valid for hosts that do not use Data Cache. The first actual Data Cache operation logs a one-time warning and runs its factory uncached.
Configuration
The host binds domain policy (the library only consumes it via ICacheOrchestrator):
{
"Cache": {
"DataCacheInstances": { "default": { "Provider": "InMemory" } },
"Domains": {
"catalog": {
"Version": "1",
"DataCache": { "Enabled": true, "TtlSeconds": 300 }
}
}
}
}
Usage
builder.Services.AddCacheOrchestratorCore(builder.Configuration);
builder.Services.AddCacheOrchestratorFusionCache(builder.Configuration);
public sealed class CatalogService(ICacheOrchestrator cache)
{
public ValueTask<ProductDto?> GetProductAsync(
CacheDomainContext cacheDomain,
int id,
CancellationToken cancellationToken) =>
cache.GetOrCreateAsync(
cacheDomain,
logicalKey: $"product:{id}",
async ct => await LoadProductAsync(id, ct),
cancellationToken);
}
The worker installs CacheOrchestrator.Core plus one provider package. A reusable class library needs only Core; its host owns registration. Add CacheOrchestrator.AspNetCore only when the host needs Output Cache, Client Cache headers, or HTTP helpers.
Documentation
License
MIT — LICENSE.md
| 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 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. |
-
net10.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- System.IO.Hashing (>= 10.0.10)
-
net8.0
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 8.0.2)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 8.0.22)
- Microsoft.Extensions.Hosting.Abstractions (>= 8.0.1)
- Microsoft.Extensions.Logging.Abstractions (>= 8.0.3)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 8.0.0)
- System.IO.Hashing (>= 10.0.10)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on CacheOrchestrator.Core:
| Package | Downloads |
|---|---|
|
CacheOrchestrator.EFCore.Invalidation
EF Core SaveChanges hook for CacheOrchestrator: map CLR types to (domain, entityKind) and purge entity tags after a successful save. |
|
|
CacheOrchestrator.AspNetCore
ASP.NET Core integration for CacheOrchestrator: Output Cache, client Cache-Control, Admin API, and HTTP domain data-cache helpers. |
|
|
CacheOrchestrator.FusionCache
FusionCache data-cache provider for CacheOrchestrator.Core. |
|
|
CacheOrchestrator.HybridCache
Microsoft HybridCache data-cache provider for CacheOrchestrator.Core (subset of Fusion capabilities). |
|
|
CacheOrchestrator.Redis.Shared
Support library for CacheOrchestrator Redis backends (connection options and configuration resolution). Not intended to be referenced directly by applications — install CacheOrchestrator.Redis, CacheOrchestrator.AspNetCore.Redis, or CacheOrchestrator.FusionCache.Redis instead. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-beta.3 | 92 | 8/30/2026 |
| 3.0.0-beta.2 | 97 | 8/25/2026 |
| 3.0.0-beta.1 | 94 | 8/25/2026 |
CacheOrchestrator 3.0.0-beta.3
v3 beta.3 continues the modular package split and host integrations for early testing. Highlights: Redis leaf packages (`AspNetCore.Redis`, `FusionCache.Redis`) beside the Redis meta package; endpoint cache identity for non-GET reads; docs and playground multi-instance product store improvements.
Full notes: https://github.com/amarinsek/CacheOrchestrator/releases/tag/v3.0.0-beta.3