CacheOrchestrator.Core
3.0.0-beta.5
dotnet add package CacheOrchestrator.Core --version 3.0.0-beta.5
NuGet\Install-Package CacheOrchestrator.Core -Version 3.0.0-beta.5
<PackageReference Include="CacheOrchestrator.Core" Version="3.0.0-beta.5" />
<PackageVersion Include="CacheOrchestrator.Core" Version="3.0.0-beta.5" />
<PackageReference Include="CacheOrchestrator.Core" />
paket add CacheOrchestrator.Core --version 3.0.0-beta.5
#r "nuget: CacheOrchestrator.Core, 3.0.0-beta.5"
#:package CacheOrchestrator.Core@3.0.0-beta.5
#addin nuget:?package=CacheOrchestrator.Core&version=3.0.0-beta.5&prerelease
#tool nuget:?package=CacheOrchestrator.Core&version=3.0.0-beta.5&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 transaction commit. |
|
|
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.5 | 204 | 9/8/2026 |
| 3.0.0-beta.4 | 129 | 9/7/2026 |
| 3.0.0-beta.3 | 125 | 8/30/2026 |
| 3.0.0-beta.2 | 114 | 8/25/2026 |
| 3.0.0-beta.1 | 115 | 8/25/2026 |
CacheOrchestrator 3.0.0-beta.5
v3 beta.5 fixes authenticated cache-key collisions, HTTP representation identity, entity-footprint tag publication, EF transaction-aware invalidation, and Redis backend isolation. Runtime settings update atomically, cluster commands report incomplete execution, and queued Edge purges retain their original destinations. Public API contracts, documentation, regression coverage, and package/analyzer checks are aligned for 3.0.
Full notes: https://github.com/CacheOrchestrator/CacheOrchestrator/releases/tag/v3.0.0-beta.5