eQuantic.Core.CQS.Abstractions 2.1.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package eQuantic.Core.CQS.Abstractions --version 2.1.0
                    
NuGet\Install-Package eQuantic.Core.CQS.Abstractions -Version 2.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="eQuantic.Core.CQS.Abstractions" Version="2.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="eQuantic.Core.CQS.Abstractions" Version="2.1.0" />
                    
Directory.Packages.props
<PackageReference Include="eQuantic.Core.CQS.Abstractions" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add eQuantic.Core.CQS.Abstractions --version 2.1.0
                    
#r "nuget: eQuantic.Core.CQS.Abstractions, 2.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package eQuantic.Core.CQS.Abstractions@2.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=eQuantic.Core.CQS.Abstractions&version=2.1.0
                    
Install as a Cake Addin
#tool nuget:?package=eQuantic.Core.CQS.Abstractions&version=2.1.0
                    
Install as a Cake Tool

eQuantic.Core.CQS.Abstractions

NuGet

Interfaces and abstractions for the eQuantic.Core.CQS framework.

Installation

dotnet add package eQuantic.Core.CQS.Abstractions

When to Use

Use this package when you want to:

  • Define commands, queries, and handlers in a separate assembly
  • Create provider implementations without depending on the full CQS package
  • Build libraries that integrate with eQuantic.Core.CQS

Key Interfaces

Commands & Queries

// Command without result
public record MyCommand(string Data) : ICommand;

// Command with result
public record CreateCommand(string Name) : ICommand<Guid>;

// Query with result
public record GetByIdQuery(Guid Id) : IQuery<MyDto>;

Handlers

public class MyCommandHandler : ICommandHandler<MyCommand>
{
    public Task Execute(MyCommand command, CancellationToken ct) { }
}

public class MyQueryHandler : IQueryHandler<GetByIdQuery, MyDto>
{
    public Task<MyDto> Execute(GetByIdQuery query, CancellationToken ct) { }
}

Sagas

public class MySagaData : ISagaData
{
    public Guid SagaId { get; set; }
    public SagaState State { get; set; }
    // Custom data
}

Outbox

public interface IOutboxRepository
{
    Task Add(IOutboxMessage message, CancellationToken ct);
    Task<IReadOnlyList<IOutboxMessage>> GetPending(int batchSize, CancellationToken ct);
    Task MarkProcessed(Guid messageId, CancellationToken ct);
}

License

MIT License - See LICENSE for details.

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (14)

Showing the top 5 NuGet packages that depend on eQuantic.Core.CQS.Abstractions:

Package Downloads
eQuantic.Core.CQS

High-performance CQS/CQRS framework for .NET with pipeline behaviors, notifications, streaming, sagas, and source generators. A modern, MIT-licensed alternative to MediatR.

eQuantic.Core.CQS.AWS

AWS SQS integration for eQuantic.Core.CQS Outbox pattern. Publish messages to Amazon SQS queues.

eQuantic.Core.CQS.PostgreSql

PostgreSQL implementations for eQuantic.Core.CQS - Includes Saga Repository, Outbox, and Job Scheduler

eQuantic.Core.CQS.Redis

Redis implementations for eQuantic.Core.CQS - Includes Saga Repository, Outbox, and Job Scheduler

eQuantic.Core.CQS.MongoDb

MongoDB implementations for eQuantic.Core.CQS - Includes Saga Repository, Outbox, and Job Scheduler

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.4.0 460 2/14/2026
2.3.1 389 2/14/2026
2.3.0 402 12/28/2025
2.1.0 404 12/27/2025
1.0.5 386 12/27/2025
1.0.4 304 12/27/2025
1.0.0 426 12/25/2025
1.0.0-ci.2 163 12/25/2025