Bas24.CommandQuery
1.0.1
dotnet add package Bas24.CommandQuery --version 1.0.1
NuGet\Install-Package Bas24.CommandQuery -Version 1.0.1
<PackageReference Include="Bas24.CommandQuery" Version="1.0.1" />
<PackageVersion Include="Bas24.CommandQuery" Version="1.0.1" />
<PackageReference Include="Bas24.CommandQuery" />
paket add Bas24.CommandQuery --version 1.0.1
#r "nuget: Bas24.CommandQuery, 1.0.1"
#:package Bas24.CommandQuery@1.0.1
#addin nuget:?package=Bas24.CommandQuery&version=1.0.1
#tool nuget:?package=Bas24.CommandQuery&version=1.0.1
CommandQuery
CommandQuery is a CQRS implementation.
Supports request/response, commands, queries, notifications and events, synchronous and async with intelligent dispatching via C# generic variance.
Examples in this Project.
Installing CommandQuery
You should install CommandQuery with NuGet
Install-Package Bas24.CommandQuery
Or via the .NET Core command line interface:
dotnet add package Bas24.CommandQuery
Registering with assembly
services.CommandQuery(cq => cq.RegisterAssembly(typeof(Program).Assembly));
This registers:
ICommandQueryas scopedIRequestHandler<,>concrete implementations as transientIRequestHandler<>concrete implementations as transientINotificationHandler<>concrete implementations as transient
This also registers open generic implementations for:
INotificationHandler<>
To register behaviors, pre/post processors:
services.AddCommandQuery(cfg => {
cq.RegisterAssembly(typeof(Program).Assembly);
cq.NotificationPublisher = new MultipleNotificationPublisher();
cq.NotificationPublisherType = typeof(MultipleNotificationPublisher);
cq.AddBehavior(typeof(LoggingPipelineBehavior<,>));
cq.AddRequestPreProcessor(typeof(GenericRequestPreProcessor<>));
cq.AddRequestPostProcessor(typeof(GenericRequestPostProcessor<,>));
});
With additional methods for open generics and overloads for explicit service types.
| 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
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Scrutor (>= 6.1.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.