Excalibur.Dispatch
3.0.0-alpha.208
dotnet add package Excalibur.Dispatch --version 3.0.0-alpha.208
NuGet\Install-Package Excalibur.Dispatch -Version 3.0.0-alpha.208
<PackageReference Include="Excalibur.Dispatch" Version="3.0.0-alpha.208" />
<PackageVersion Include="Excalibur.Dispatch" Version="3.0.0-alpha.208" />
<PackageReference Include="Excalibur.Dispatch" />
paket add Excalibur.Dispatch --version 3.0.0-alpha.208
#r "nuget: Excalibur.Dispatch, 3.0.0-alpha.208"
#:package Excalibur.Dispatch@3.0.0-alpha.208
#addin nuget:?package=Excalibur.Dispatch&version=3.0.0-alpha.208&prerelease
#tool nuget:?package=Excalibur.Dispatch&version=3.0.0-alpha.208&prerelease
Dispatch
Core messaging framework providing message dispatching, middleware pipeline, and DI integration for .NET applications.
Installation
dotnet add package Dispatch
Purpose
Dispatch is a lightweight, extensible messaging framework for building distributed systems. Use it as a MediatR alternative with built-in support for middleware pipelines, pluggable serialization, validation, and cloud-native messaging patterns.
Key Types
IDispatchBuilder- Fluent configuration builderDispatchBuilder- DI service registrationAddDispatch()- Service collection extensionIMessageMiddleware- Pipeline middleware baseMessageResult- Standard result type
Quick Start
// Register Dispatch services
services.AddDispatch(options =>
{
options.AddHandlersFromAssembly(typeof(Program).Assembly);
});
// Define a command
public record CreateOrder(string CustomerId, decimal Amount) : IDispatchAction;
// Create a handler
public class CreateOrderHandler : IDispatchHandler<CreateOrder>
{
public Task<IDispatchResult> HandleAsync(
CreateOrder command,
IMessageContext context,
CancellationToken cancellationToken)
{
// Implementation
return Task.FromResult<IDispatchResult>(MessageResult.Success());
}
}
// Dispatch a command
await dispatcher.DispatchAsync(new CreateOrder("cust-1", 99.99m), cancellationToken);
Features
- Message Handling: Strongly-typed action, document, and event handlers
- Middleware Pipeline: Extensible pipeline for cross-cutting concerns
- Pluggable Serialization: MemoryPack (default), System.Text.Json, MessagePack
- Validation: DataAnnotations (built-in) or FluentValidation (optional)
- Rate Limiting: Built-in rate limiting capabilities
- Health Checks: Health check endpoints for monitoring
Related Packages
Excalibur.Dispatch.Abstractions- Core interfaces and typesExcalibur.Dispatch.Validation.FluentValidation- FluentValidation integrationExcalibur.Dispatch.Transport.*- Message transport implementationsExcalibur.Dispatch.Hosting.*- Hosting integrations
Documentation
Full documentation: https://github.com/TrigintaFaces/Excalibur
License
This project is multi-licensed under:
See LICENSE for details.
| 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
- CloudNative.CloudEvents (>= 2.8.0)
- CloudNative.CloudEvents.SystemTextJson (>= 2.8.0)
- Cronos (>= 0.12.0)
- Excalibur.Dispatch.Abstractions (>= 3.0.0-alpha.208)
- Medo.Uuid7 (>= 3.2.0)
- Microsoft.AspNetCore.Authorization (>= 10.0.7)
- Microsoft.Extensions.Configuration (>= 10.0.7)
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Configuration.Binder (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection (>= 10.0.7)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Diagnostics.HealthChecks (>= 10.0.7)
- Microsoft.Extensions.Diagnostics.HealthChecks.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.7)
- Microsoft.Extensions.Http (>= 10.0.7)
- Microsoft.Extensions.Logging (>= 10.0.7)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.7)
- Microsoft.Extensions.ObjectPool (>= 10.0.7)
- Microsoft.Extensions.Options (>= 10.0.7)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.7)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.7)
- System.Threading.RateLimiting (>= 10.0.7)
NuGet packages (51)
Showing the top 5 NuGet packages that depend on Excalibur.Dispatch:
| Package | Downloads |
|---|---|
|
Excalibur.Data
Data access layer implementation for Excalibur with repository patterns, unit of work, and data abstractions. Provides concrete implementations for data persistence. |
|
|
Excalibur.Application
Application-layer building blocks for Excalibur, including CQRS-oriented application services, handlers, and orchestration contracts. |
|
|
Excalibur.Hosting
Core hosting infrastructure for Excalibur applications, including bootstrap and lifecycle integration for web and worker hosts. |
|
|
Excalibur.A3
Authorization, Authentication, and Audit (A3) services for the Excalibur framework. |
|
|
Excalibur.Hosting.Jobs
Job hosting infrastructure for Excalibur applications with .NET Worker Service and Web hosting support. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0-alpha.208 | 527 | 6/11/2026 |
| 3.0.0-alpha.207 | 537 | 6/11/2026 |
| 3.0.0-alpha.205 | 663 | 6/10/2026 |
| 3.0.0-alpha.204 | 653 | 6/8/2026 |
| 3.0.0-alpha.203 | 651 | 6/8/2026 |
| 3.0.0-alpha.202 | 665 | 6/8/2026 |
| 3.0.0-alpha.201 | 665 | 6/8/2026 |
| 3.0.0-alpha.199 | 660 | 6/8/2026 |
| 3.0.0-alpha.198 | 630 | 5/28/2026 |
| 3.0.0-alpha.197 | 645 | 5/28/2026 |
| 3.0.0-alpha.194 | 658 | 5/20/2026 |
| 3.0.0-alpha.193 | 652 | 5/13/2026 |
| 3.0.0-alpha.192 | 650 | 5/13/2026 |
| 3.0.0-alpha.191 | 650 | 5/13/2026 |
| 3.0.0-alpha.189 | 662 | 5/12/2026 |
| 3.0.0-alpha.187 | 683 | 5/8/2026 |
| 3.0.0-alpha.185 | 692 | 5/7/2026 |
| 3.0.0-alpha.183 | 673 | 5/7/2026 |
| 3.0.0-alpha.182 | 682 | 5/6/2026 |
| 3.0.0-alpha.181 | 728 | 5/6/2026 |