Reo.Core.Application.Abstractions.MediatR 6.0.521

There is a newer version of this package available.
See the version list below for details.
dotnet add package Reo.Core.Application.Abstractions.MediatR --version 6.0.521
                    
NuGet\Install-Package Reo.Core.Application.Abstractions.MediatR -Version 6.0.521
                    
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="Reo.Core.Application.Abstractions.MediatR" Version="6.0.521" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Reo.Core.Application.Abstractions.MediatR" Version="6.0.521" />
                    
Directory.Packages.props
<PackageReference Include="Reo.Core.Application.Abstractions.MediatR" />
                    
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 Reo.Core.Application.Abstractions.MediatR --version 6.0.521
                    
#r "nuget: Reo.Core.Application.Abstractions.MediatR, 6.0.521"
                    
#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 Reo.Core.Application.Abstractions.MediatR@6.0.521
                    
#: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=Reo.Core.Application.Abstractions.MediatR&version=6.0.521
                    
Install as a Cake Addin
#tool nuget:?package=Reo.Core.Application.Abstractions.MediatR&version=6.0.521
                    
Install as a Cake Tool

Reo.Core.Application.Abstractions.MediatR

Описание пакета

Пакет Reo.Core.Application.Abstractions.MediatR предоставляет абстракции для интеграции с библиотекой MediatR в приложениях на C#. Он упрощает обработку доменных команд, событий и команд с результатами, добавляя логирование, обработку ошибок и стандартные шаблоны для работы с архитектурой CQRS. Пакет решает проблему стандартизации обработки операций в приложениях, где требуется разделение команд (commands), событий (events) и операций с возвращаемым результатом (commands with results).

Основные компоненты

  • IReoApplicationService<TDomainCommandsExecutor, TQuery> Интерфейс для сервисов приложения, которые выполняют операции с использованием доменных команд. Предоставляет метод ExecuteAsync для асинхронного выполнения запросов.

  • ReoDomainCommandHandler<TDomainCommand> Абстрактный класс для обработки доменных команд. Реализует IRequestHandler<TDomainCommand> и добавляет логирование и обработку ошибок.

  • ReoDomainCommandWithResultHandler<TDomainCommand> Абстрактный класс для обработки команд с возвращаемым результатом. Реализует IRequestHandler<TDomainCommand, bool> и добавляет логирование результата выполнения.

  • ReoDomainEventHandler<TDomainEvent> Абстрактный класс для обработки доменных событий. Реализует INotificationHandler<TDomainEvent> и добавляет логирование и обработку ошибок.

  • ServiceCollectionExtensions Методы расширения для регистрации сервисов приложения в контейнере зависимостей (DI) в ASP.NET Core.

Требования

Установка

Используйте следующие команды для установки пакета:

Install-Package Reo.Core.Application.Abstractions.MediatR
dotnet add package Reo.Core.Application.Abstractions.MediatR

Настройка

Регистрация в DI (ASP.NET Core)

Добавьте сервисы в контейнер зависимостей с помощью метода расширения:

services.AddReoApplicationServices<YourAssembly>();

Замените Reo.Core.Application.Abstractions.MediatR на сборку вашего проекта.

Конфигурационные параметры

N/A. Пакет не требует дополнительной конфигурации.

Использование

Пример 1: Обработка команды

public class CreateUserCommand : IRequest
{
    public string Username { get; set; }
}

public class CreateUserCommandHandler : ReoDomainCommandHandler<CreateUserCommand>
{
    protected override Task InnerHandleAsync(CreateUserCommand command, CancellationToken cancellationToken)
    {
        // Логика создания пользователя
        return Task.CompletedTask;
    }
}

Пример 2: Обработка команды с результатом

public class ValidateUserCommand : IRequest<bool>
{
    public string Username { get; set; }
}

public class ValidateUserCommandHandler : ReoDomainCommandWithResultHandler<ValidateUserCommand>
{
    protected override Task<bool> InnerHandleAsync(ValidateUserCommand command, CancellationToken cancellationToken)
    {
        // Проверка пользователя
        return Task.FromResult(true);
    }
}

Пример 3: Использование сервиса в контроллере

[ApiController]
[Route("api/[controller]")]
public class UserController : ControllerBase
{
    private readonly IReoApplicationService<..., CreateUserCommand> _service;

    public UserController(IReoApplicationService<..., CreateUserCommand> service)
    {
        _service = service;
    }

    [HttpPost]
    public async Task<IActionResult> CreateUser([FromBody] CreateUserCommand command)
    {
        await _service.ExecuteAsync(command, CancellationToken.None);
        return Ok();
    }
}

Лицензия

Этот пакет распространяется под лицензией MIT License.

Product 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 was computed.  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

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
8.0.593 0 9/30/2025
8.0.592 2 9/30/2025
8.0.591 3 9/30/2025
8.0.589 33 9/29/2025
8.0.588 31 9/29/2025
8.0.587 35 9/29/2025
8.0.586 36 9/29/2025
8.0.585 35 9/29/2025
8.0.583 76 9/26/2025
8.0.582 100 9/26/2025
8.0.580 118 9/25/2025
8.0.579 117 9/25/2025
8.0.578 117 9/25/2025
8.0.577 116 9/25/2025
8.0.576 118 9/25/2025
8.0.575 121 9/25/2025
8.0.574 146 9/24/2025
8.0.573 152 9/23/2025
8.0.572 153 9/23/2025
8.0.571 141 9/23/2025
8.0.570 151 9/23/2025
8.0.569 178 9/22/2025
8.0.568 198 9/22/2025
8.0.567 204 9/22/2025
8.0.566 178 9/21/2025
8.0.565 222 9/19/2025
8.0.564 221 9/19/2025
8.0.563 227 9/19/2025
8.0.562 232 9/19/2025
8.0.561 269 9/16/2025
8.0.560 277 9/16/2025
8.0.559 269 9/16/2025
8.0.558 276 9/16/2025
8.0.557 231 9/15/2025
8.0.556 223 9/15/2025
8.0.555 87 9/12/2025
8.0.554 141 9/11/2025
8.0.553 141 9/11/2025
8.0.552 140 9/11/2025
8.0.551 143 9/11/2025
8.0.550 139 9/11/2025
8.0.548 140 9/11/2025
8.0.547 142 9/11/2025
8.0.546 131 9/11/2025
8.0.545 139 9/11/2025
8.0.544 143 9/10/2025
8.0.543 142 9/10/2025
8.0.542 144 9/10/2025
8.0.541 142 9/10/2025
8.0.540 140 9/9/2025
8.0.539 141 9/9/2025
8.0.538 142 9/9/2025
8.0.537 141 9/9/2025
8.0.536 138 9/9/2025
8.0.535 142 9/9/2025
8.0.534 130 9/9/2025
8.0.533 142 9/9/2025
8.0.532 127 9/8/2025
8.0.531 122 9/5/2025
8.0.530 152 9/4/2025
8.0.529 134 9/4/2025
8.0.528 155 9/4/2025
8.0.527 141 9/4/2025
8.0.526 144 9/3/2025
8.0.525 135 9/2/2025
8.0.524 137 9/2/2025
8.0.523 141 9/2/2025
8.0.522 184 8/28/2025
8.0.521 186 8/27/2025
8.0.520 185 8/27/2025
8.0.519 188 8/27/2025
8.0.518 193 8/27/2025
8.0.517 161 8/25/2025
8.0.516 280 8/25/2025
8.0.515 208 8/24/2025
8.0.514 146 8/21/2025
8.0.513 128 8/20/2025
8.0.512 135 8/20/2025
8.0.511 142 8/20/2025
8.0.510 137 8/18/2025
8.0.509 143 8/18/2025
8.0.508 155 8/13/2025
8.0.506 147 8/13/2025
8.0.505 144 8/13/2025
8.0.504 134 8/13/2025
8.0.503 145 8/13/2025
8.0.502 143 8/12/2025
8.0.501 147 8/12/2025
8.0.500 141 8/12/2025
8.0.499 141 8/12/2025
8.0.498 140 8/11/2025
8.0.497 170 8/8/2025
8.0.496 187 8/8/2025
8.0.495 186 8/8/2025
8.0.494 208 8/8/2025
8.0.493 224 8/7/2025
8.0.492 226 8/7/2025
8.0.491 218 8/7/2025
8.0.490 224 8/7/2025
8.0.489 223 8/5/2025
8.0.488 223 8/5/2025
8.0.487 96 8/1/2025
8.0.486 116 7/30/2025
8.0.485 130 7/28/2025
8.0.484 112 7/28/2025
8.0.483 124 7/28/2025
8.0.482 126 7/28/2025
8.0.481 114 7/28/2025
8.0.480 383 7/25/2025
8.0.479 400 7/25/2025
8.0.478 405 7/25/2025
8.0.477 420 7/25/2025
8.0.476 422 7/25/2025
8.0.475 466 7/24/2025
8.0.474 475 7/24/2025
8.0.473 525 7/23/2025
8.0.472 525 7/23/2025
8.0.470 523 7/23/2025
8.0.469 514 7/23/2025
8.0.468 525 7/23/2025
8.0.467 523 7/23/2025
8.0.466 530 7/23/2025
8.0.465 530 7/23/2025
8.0.464 530 7/23/2025
8.0.463 525 7/23/2025
8.0.462 538 7/22/2025
8.0.461 528 7/22/2025
8.0.460 423 7/21/2025
8.0.459 90 7/18/2025
8.0.458 117 7/18/2025
8.0.457 146 7/17/2025
8.0.456 143 7/17/2025
8.0.455 143 7/17/2025
8.0.454 138 7/17/2025
8.0.453 146 7/17/2025
8.0.452 142 7/17/2025
8.0.451 146 7/17/2025
8.0.450 146 7/17/2025
8.0.449 138 7/17/2025
8.0.448 137 7/17/2025
8.0.447 146 7/16/2025
8.0.446 144 7/16/2025
8.0.445 149 7/16/2025
8.0.444 141 7/16/2025
8.0.443 147 7/16/2025
8.0.442 149 7/16/2025
8.0.439 140 7/15/2025
8.0.438 147 7/15/2025
8.0.437 151 7/15/2025
8.0.436 135 7/15/2025
8.0.435 146 7/15/2025
8.0.433 152 7/14/2025
8.0.432 151 7/14/2025
8.0.431 122 7/11/2025
8.0.430 134 7/11/2025
8.0.429 146 7/10/2025
8.0.428 150 7/10/2025
8.0.427 151 7/9/2025
8.0.426 150 7/8/2025
8.0.425 152 7/8/2025
8.0.424 149 7/8/2025
8.0.423 148 7/8/2025
8.0.422 147 7/8/2025
8.0.421 154 7/8/2025
8.0.420 146 7/7/2025
8.0.419 144 7/7/2025
8.0.418 144 7/7/2025
8.0.417 139 7/7/2025
8.0.416 148 7/6/2025
8.0.415 112 7/4/2025
8.0.414 114 7/4/2025
8.0.411 156 7/3/2025
8.0.410 142 7/3/2025
8.0.409 157 7/3/2025
8.0.408 146 7/1/2025
8.0.407 152 7/1/2025
8.0.406 140 7/1/2025
8.0.405 152 7/1/2025
8.0.404 169 6/26/2025
8.0.403 138 6/26/2025
8.0.401 191 6/24/2025
8.0.400 151 6/24/2025
8.0.399 150 6/23/2025
8.0.398 152 6/23/2025
8.0.397 111 6/20/2025
8.0.396 165 6/19/2025
8.0.395 153 6/18/2025
8.0.394 156 6/18/2025
8.0.392 154 6/18/2025
8.0.390 158 6/18/2025
6.0.593 0 9/30/2025
6.0.592 1 9/30/2025
6.0.591 1 9/30/2025
6.0.589 30 9/29/2025
6.0.588 30 9/29/2025
6.0.587 34 9/29/2025
6.0.586 28 9/29/2025
6.0.585 32 9/29/2025
6.0.583 71 9/26/2025
6.0.582 91 9/26/2025
6.0.580 115 9/25/2025
6.0.579 113 9/25/2025
6.0.578 116 9/25/2025
6.0.577 114 9/25/2025
6.0.576 113 9/25/2025
6.0.575 118 9/25/2025
6.0.574 138 9/24/2025
6.0.573 147 9/23/2025
6.0.572 137 9/23/2025
6.0.571 148 9/23/2025
6.0.570 151 9/23/2025
6.0.569 166 9/22/2025
6.0.568 193 9/22/2025
6.0.567 191 9/22/2025
6.0.566 175 9/21/2025
6.0.565 215 9/19/2025
6.0.564 223 9/19/2025
6.0.563 223 9/19/2025
6.0.562 232 9/19/2025
6.0.561 269 9/16/2025
6.0.560 271 9/16/2025
6.0.559 277 9/16/2025
6.0.558 273 9/16/2025
6.0.557 214 9/15/2025
6.0.556 209 9/15/2025
6.0.555 92 9/12/2025
6.0.554 138 9/11/2025
6.0.553 142 9/11/2025
6.0.552 138 9/11/2025
6.0.551 138 9/11/2025
6.0.550 129 9/11/2025
6.0.548 137 9/11/2025
6.0.547 138 9/11/2025
6.0.546 138 9/11/2025
6.0.545 138 9/11/2025
6.0.544 140 9/10/2025
6.0.543 132 9/10/2025
6.0.542 138 9/10/2025
6.0.541 143 9/10/2025
6.0.540 138 9/9/2025
6.0.539 144 9/9/2025
6.0.538 126 9/9/2025
6.0.537 139 9/9/2025
6.0.536 139 9/9/2025
6.0.535 135 9/9/2025
6.0.534 137 9/9/2025
6.0.533 130 9/9/2025
6.0.532 140 9/8/2025
6.0.531 114 9/5/2025
6.0.530 149 9/4/2025
6.0.529 144 9/4/2025
6.0.528 148 9/4/2025
6.0.527 152 9/4/2025
6.0.526 149 9/3/2025
6.0.525 134 9/2/2025
6.0.524 131 9/2/2025
6.0.523 138 9/2/2025
6.0.522 188 8/28/2025
6.0.521 185 8/27/2025
6.0.520 184 8/27/2025
6.0.519 177 8/27/2025
6.0.518 182 8/27/2025
6.0.517 160 8/25/2025
6.0.516 279 8/25/2025
6.0.515 206 8/24/2025
6.0.514 134 8/21/2025
6.0.513 137 8/20/2025
6.0.512 132 8/20/2025
6.0.511 138 8/20/2025
6.0.510 123 8/18/2025
6.0.509 128 8/18/2025
6.0.508 141 8/13/2025
6.0.506 141 8/13/2025
6.0.505 138 8/13/2025
6.0.504 148 8/13/2025
6.0.503 140 8/13/2025
6.0.502 141 8/12/2025
6.0.501 128 8/12/2025
6.0.500 144 8/12/2025
6.0.499 142 8/12/2025
6.0.498 129 8/11/2025
6.0.497 175 8/8/2025
6.0.496 181 8/8/2025
6.0.495 171 8/8/2025
6.0.494 209 8/8/2025
6.0.493 208 8/7/2025
6.0.492 216 8/7/2025
6.0.491 213 8/7/2025
6.0.490 218 8/7/2025
6.0.489 235 8/5/2025
6.0.488 230 8/5/2025
6.0.487 97 8/1/2025
6.0.486 115 7/30/2025
6.0.485 120 7/28/2025
6.0.484 118 7/28/2025
6.0.483 113 7/28/2025
6.0.482 117 7/28/2025
6.0.481 123 7/28/2025
6.0.480 389 7/25/2025
6.0.479 412 7/25/2025
6.0.478 407 7/25/2025
6.0.477 421 7/25/2025
6.0.476 435 7/25/2025
6.0.475 472 7/24/2025
6.0.474 470 7/24/2025
6.0.473 523 7/23/2025
6.0.472 523 7/23/2025
6.0.470 519 7/23/2025
6.0.469 523 7/23/2025
6.0.468 520 7/23/2025
6.0.467 534 7/23/2025
6.0.466 539 7/23/2025
6.0.465 540 7/23/2025
6.0.464 539 7/23/2025
6.0.463 537 7/23/2025
6.0.462 535 7/22/2025
6.0.461 536 7/22/2025
6.0.460 421 7/21/2025
6.0.459 99 7/18/2025
6.0.458 110 7/18/2025
6.0.457 143 7/17/2025
6.0.456 150 7/17/2025
6.0.455 146 7/17/2025