CQRSharp 2.1.0
Please note that the intended suite of Native AoT support tools is not present in these releases. Ensure that you have the latest version downloaded for proper AoT support.
See the version list below for details.
dotnet add package CQRSharp --version 2.1.0
NuGet\Install-Package CQRSharp -Version 2.1.0
<PackageReference Include="CQRSharp" Version="2.1.0" />
<PackageVersion Include="CQRSharp" Version="2.1.0" />
<PackageReference Include="CQRSharp" />
paket add CQRSharp --version 2.1.0
#r "nuget: CQRSharp, 2.1.0"
#:package CQRSharp@2.1.0
#addin nuget:?package=CQRSharp&version=2.1.0
#tool nuget:?package=CQRSharp&version=2.1.0
CQRSharp
A lightweight, extensible, and attribute-driven Command Query Responsibility Segregation (CQRS) framework for .NET applications.
For more information, please check out the wiki page!
Planned Features
- Additional order control for the pre- and post-execution attributes via parametrization or other.
- Enhanced Validation Integration: Seamless integration with popular validation libraries like FluentValidation.
- Performance Improvements: Optimize the dispatcher and attribute invocation for better performance.
- Event Publishing: Event publishing mechanisms via RabbitMQ or Kafka for domain event handling.
- Transactional Behavior: To support atomicity during command execution.
- Caching: Command idempotency, distributed caching systems & basic in-memory caching.
- Bulkhead Isolation
- Dead Letter Queue
- Tenant-Aware Commands
- Compensatory Mechanisms + Saga Support: Implement compensatory mechanisms for long-running commands.
Contributing
Contributions are welcome! Please open issues and pull requests for bug fixes, enhancements, or new features.
To contribute:
- Fork the repository.
- Create a new branch.
- Make your changes.
- Submit a pull request.
Please ensure that your code follows the project's coding standards and includes appropriate tests.
License
This project is licensed under the MIT License.
Note: This project is in active development.
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 is compatible. 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 was computed. 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. |
-
net8.0
- Microsoft.Extensions.DependencyInjection (>= 9.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Hosting (>= 9.0.0)
- Microsoft.Extensions.Logging (>= 9.0.0)
- Microsoft.Extensions.Logging.Console (>= 9.0.0)
- System.Text.Json (>= 9.0.0)
-
net9.0
- Microsoft.Extensions.DependencyInjection (>= 9.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Hosting (>= 9.0.0)
- Microsoft.Extensions.Logging (>= 9.0.0)
- Microsoft.Extensions.Logging.Console (>= 9.0.0)
- System.Text.Json (>= 9.0.0)
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 | |
---|---|---|---|
2.2.6 | 185 | 4/20/2025 | |
2.2.5 | 146 | 4/11/2025 | |
2.2.4 | 184 | 4/7/2025 | |
2.2.3.1 | 293 | 3/11/2025 | |
2.2.3 | 273 | 3/10/2025 | |
2.2.2 | 317 | 3/8/2025 | |
2.2.0 | 240 | 2/8/2025 | |
2.1.0 | 196 | 1/8/2025 | |
2.0.0 | 222 | 1/2/2025 | |
1.1.6 | 227 | 12/5/2024 | |
1.1.5 | 224 | 10/24/2024 | |
1.1.4 | 228 | 10/11/2024 | |
1.1.3 | 219 | 9/28/2024 | |
1.1.2 | 224 | 9/28/2024 | |
1.1.1 | 225 | 9/24/2024 | |
1.1.0 | 225 | 9/23/2024 | |
1.0.0 | 234 | 9/23/2024 |
-Fixed the RateLimiterTests, as the new system for user identifier generation would throw off the current tests. -Introduced GeneralTests which has various unit tests for other functionalities. -Removed IUserIdentificationFactory and IRequestIdentificationFactory, since it made no sense to have a library-sided Request and User identification handled via our interfaces. If a library consumer has a requirement for UserId and RequestId, they can create their own, custom contexts, and specify their retrieval logic there. -Updated the Sample project.
-Squashing additional XML documentation issues.