Excalibur.Dispatch.AspNetCore
10.0.0-alpha.10
dotnet add package Excalibur.Dispatch.AspNetCore --version 10.0.0-alpha.10
NuGet\Install-Package Excalibur.Dispatch.AspNetCore -Version 10.0.0-alpha.10
<PackageReference Include="Excalibur.Dispatch.AspNetCore" Version="10.0.0-alpha.10" />
<PackageVersion Include="Excalibur.Dispatch.AspNetCore" Version="10.0.0-alpha.10" />
<PackageReference Include="Excalibur.Dispatch.AspNetCore" />
paket add Excalibur.Dispatch.AspNetCore --version 10.0.0-alpha.10
#r "nuget: Excalibur.Dispatch.AspNetCore, 10.0.0-alpha.10"
#:package Excalibur.Dispatch.AspNetCore@10.0.0-alpha.10
#addin nuget:?package=Excalibur.Dispatch.AspNetCore&version=10.0.0-alpha.10&prerelease
#tool nuget:?package=Excalibur.Dispatch.AspNetCore&version=10.0.0-alpha.10&prerelease
Excalibur.Dispatch.AspNetCore
Experience metapackage bundling Excalibur.Dispatch with ASP.NET Core hosting and observability. Provides a single AddDispatchAspNetCore() call for the common web scenario.
Installation
dotnet add package Excalibur.Dispatch.AspNetCore
Quick Start
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddDispatchAspNetCore(dispatch =>
{
dispatch.AddHandlersFromAssembly(typeof(Program).Assembly);
});
var app = builder.Build();
app.MapControllers();
app.Run();
What's Included
This metapackage bundles:
Excalibur.Dispatch— Core messaging framework (dispatcher, pipeline, middleware)Excalibur.Dispatch.Hosting.AspNetCore— ASP.NET Core integration (controller/minimal-API helpers,HttpContext→ message-context bridge)Excalibur.Dispatch.Observability— OpenTelemetry metrics and tracing (AddDispatchInstrumentation())
AddDispatchAspNetCore() wires:
- The core dispatcher and pipeline (
AddDispatch) - Observability instrumentation (
UseObservability) - Ambient-scope resolution (
AddDispatchAmbientScope) — scoped message handlers (and handlers with scoped dependencies such asIUnitOfWork/IDb/DbContext) resolve from, and share state with, the active request scope.
Scoped handlers
With this package, dispatching a scoped handler "just works" — including via the context-less
dispatcher.DispatchAsync(message, ct) overload — because the handler is resolved from the active
request scope rather than the root container. Outside a request (background work), each dispatch gets a
fresh scope that is disposed when the handler completes.
OpenTelemetry
To export metrics and traces, subscribe Dispatch instrumentation on your OpenTelemetry builder:
builder.Services.AddOpenTelemetry()
.WithMetrics(m => m.AddDispatchInstrumentation())
.WithTracing(t => t.AddDispatchInstrumentation());
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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
- Excalibur.Dispatch (>= 10.0.0-alpha.10)
- Excalibur.Dispatch.Hosting.AspNetCore (>= 10.0.0-alpha.10)
- Excalibur.Dispatch.Observability (>= 10.0.0-alpha.10)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.10)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.0-alpha.10 | 52 | 9/6/2026 |
| 10.0.0-alpha.9 | 70 | 8/31/2026 |
| 10.0.0-alpha.8 | 73 | 8/14/2026 |
| 10.0.0-alpha.7 | 62 | 8/13/2026 |
| 10.0.0-alpha.6 | 73 | 8/11/2026 |
| 10.0.0-alpha.5 | 64 | 8/10/2026 |
| 10.0.0-alpha.4 | 59 | 8/10/2026 |
| 3.0.0-alpha.216 | 89 | 6/30/2026 |
| 3.0.0-alpha.215 | 71 | 6/23/2026 |
| 3.0.0-alpha.214 | 71 | 6/23/2026 |
Release notes and versioning policy: https://docs.excalibur-dispatch.dev/docs/migration/version-upgrades