Reo.Core.Application.Abstractions.MediatR 6.0.564

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.564
                    
NuGet\Install-Package Reo.Core.Application.Abstractions.MediatR -Version 6.0.564
                    
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.564" />
                    
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.564" />
                    
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.564
                    
#r "nuget: Reo.Core.Application.Abstractions.MediatR, 6.0.564"
                    
#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.564
                    
#: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.564
                    
Install as a Cake Addin
#tool nuget:?package=Reo.Core.Application.Abstractions.MediatR&version=6.0.564
                    
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.565 60 9/19/2025
8.0.564 63 9/19/2025
8.0.563 66 9/19/2025
8.0.562 75 9/19/2025
8.0.561 144 9/16/2025
8.0.560 149 9/16/2025
8.0.559 144 9/16/2025
8.0.558 151 9/16/2025
8.0.557 165 9/15/2025
8.0.556 156 9/15/2025
8.0.555 82 9/12/2025
8.0.554 126 9/11/2025
8.0.553 126 9/11/2025
8.0.552 125 9/11/2025
8.0.551 128 9/11/2025
8.0.550 124 9/11/2025
8.0.548 125 9/11/2025
8.0.547 127 9/11/2025
8.0.546 126 9/11/2025
8.0.545 124 9/11/2025
8.0.544 128 9/10/2025
8.0.543 128 9/10/2025
8.0.542 130 9/10/2025
8.0.541 128 9/10/2025
8.0.540 125 9/9/2025
8.0.539 127 9/9/2025
8.0.538 128 9/9/2025
8.0.537 127 9/9/2025
8.0.536 124 9/9/2025
8.0.535 128 9/9/2025
8.0.534 126 9/9/2025
8.0.533 128 9/9/2025
8.0.532 123 9/8/2025
8.0.531 108 9/5/2025
8.0.530 138 9/4/2025
8.0.529 130 9/4/2025
8.0.528 141 9/4/2025
8.0.527 137 9/4/2025
8.0.526 141 9/3/2025
8.0.525 122 9/2/2025
8.0.524 124 9/2/2025
8.0.523 128 9/2/2025
8.0.522 182 8/28/2025
8.0.521 174 8/27/2025
8.0.520 173 8/27/2025
8.0.519 176 8/27/2025
8.0.518 181 8/27/2025
8.0.517 148 8/25/2025
8.0.516 267 8/25/2025
8.0.515 196 8/24/2025
8.0.514 134 8/21/2025
8.0.513 126 8/20/2025
8.0.512 123 8/20/2025
8.0.511 130 8/20/2025
8.0.510 125 8/18/2025
8.0.509 131 8/18/2025
8.0.508 133 8/13/2025
8.0.506 135 8/13/2025
8.0.505 132 8/13/2025
8.0.504 132 8/13/2025
8.0.503 133 8/13/2025
8.0.502 131 8/12/2025
8.0.501 135 8/12/2025
8.0.500 129 8/12/2025
8.0.499 129 8/12/2025
8.0.498 128 8/11/2025
8.0.497 168 8/8/2025
8.0.496 175 8/8/2025
8.0.495 174 8/8/2025
8.0.494 196 8/8/2025
8.0.493 212 8/7/2025
8.0.492 214 8/7/2025
8.0.491 206 8/7/2025
8.0.490 212 8/7/2025
8.0.489 221 8/5/2025
8.0.488 221 8/5/2025
8.0.487 84 8/1/2025
8.0.486 104 7/30/2025
8.0.485 102 7/28/2025
8.0.484 93 7/28/2025
8.0.483 95 7/28/2025
8.0.482 94 7/28/2025
8.0.481 93 7/28/2025
8.0.480 352 7/25/2025
8.0.479 378 7/25/2025
8.0.478 380 7/25/2025
8.0.477 387 7/25/2025
8.0.476 390 7/25/2025
8.0.475 441 7/24/2025
8.0.474 442 7/24/2025
8.0.473 514 7/23/2025
8.0.472 513 7/23/2025
8.0.470 512 7/23/2025
8.0.469 513 7/23/2025
8.0.468 514 7/23/2025
8.0.467 521 7/23/2025
8.0.466 528 7/23/2025
8.0.465 529 7/23/2025
8.0.464 529 7/23/2025
8.0.463 524 7/23/2025
8.0.462 527 7/22/2025
8.0.461 527 7/22/2025
8.0.460 411 7/21/2025
8.0.459 89 7/18/2025
8.0.458 106 7/18/2025
8.0.457 135 7/17/2025
8.0.456 132 7/17/2025
8.0.455 132 7/17/2025
8.0.454 137 7/17/2025
8.0.453 135 7/17/2025
8.0.452 131 7/17/2025
8.0.451 133 7/17/2025
8.0.450 133 7/17/2025
8.0.449 135 7/17/2025
8.0.448 134 7/17/2025
8.0.447 134 7/16/2025
8.0.446 133 7/16/2025
8.0.445 136 7/16/2025
8.0.444 139 7/16/2025
8.0.443 134 7/16/2025
8.0.442 136 7/16/2025
8.0.439 138 7/15/2025
8.0.438 133 7/15/2025
8.0.437 138 7/15/2025
8.0.436 132 7/15/2025
8.0.435 133 7/15/2025
8.0.433 140 7/14/2025
8.0.432 139 7/14/2025
8.0.431 121 7/11/2025
8.0.430 123 7/11/2025
8.0.429 145 7/10/2025
8.0.428 138 7/10/2025
8.0.427 140 7/9/2025
8.0.426 138 7/8/2025
8.0.425 140 7/8/2025
8.0.424 138 7/8/2025
8.0.423 137 7/8/2025
8.0.422 136 7/8/2025
8.0.421 143 7/8/2025
8.0.420 135 7/7/2025
8.0.419 133 7/7/2025
8.0.418 133 7/7/2025
8.0.417 138 7/7/2025
8.0.416 137 7/6/2025
8.0.415 101 7/4/2025
8.0.414 113 7/4/2025
8.0.411 145 7/3/2025
8.0.410 141 7/3/2025
8.0.409 146 7/3/2025
8.0.408 133 7/1/2025
8.0.407 131 7/1/2025
8.0.406 129 7/1/2025
8.0.405 141 7/1/2025
8.0.404 158 6/26/2025
8.0.403 127 6/26/2025
8.0.401 180 6/24/2025
8.0.400 140 6/24/2025
8.0.399 138 6/23/2025
8.0.398 141 6/23/2025
8.0.397 100 6/20/2025
8.0.396 154 6/19/2025
8.0.395 142 6/18/2025
8.0.394 145 6/18/2025
8.0.392 143 6/18/2025
8.0.390 147 6/18/2025
6.0.565 56 9/19/2025
6.0.564 62 9/19/2025
6.0.563 62 9/19/2025
6.0.562 73 9/19/2025
6.0.561 142 9/16/2025
6.0.560 145 9/16/2025
6.0.559 142 9/16/2025
6.0.558 147 9/16/2025
6.0.557 148 9/15/2025
6.0.556 153 9/15/2025
6.0.555 77 9/12/2025
6.0.554 123 9/11/2025
6.0.553 127 9/11/2025
6.0.552 123 9/11/2025
6.0.551 122 9/11/2025
6.0.550 124 9/11/2025
6.0.548 122 9/11/2025
6.0.547 123 9/11/2025
6.0.546 123 9/11/2025
6.0.545 123 9/11/2025
6.0.544 126 9/10/2025
6.0.543 129 9/10/2025
6.0.542 124 9/10/2025
6.0.541 129 9/10/2025
6.0.540 125 9/9/2025
6.0.539 130 9/9/2025
6.0.538 122 9/9/2025
6.0.537 125 9/9/2025
6.0.536 125 9/9/2025
6.0.535 121 9/9/2025
6.0.534 123 9/9/2025
6.0.533 126 9/9/2025
6.0.532 126 9/8/2025
6.0.531 100 9/5/2025
6.0.530 135 9/4/2025
6.0.529 130 9/4/2025
6.0.528 134 9/4/2025
6.0.527 138 9/4/2025
6.0.526 136 9/3/2025
6.0.525 121 9/2/2025
6.0.524 118 9/2/2025
6.0.523 126 9/2/2025
6.0.522 176 8/28/2025
6.0.521 173 8/27/2025
6.0.520 172 8/27/2025
6.0.519 175 8/27/2025
6.0.518 170 8/27/2025
6.0.517 147 8/25/2025
6.0.516 266 8/25/2025
6.0.515 194 8/24/2025
6.0.514 122 8/21/2025
6.0.513 125 8/20/2025
6.0.512 120 8/20/2025
6.0.511 126 8/20/2025
6.0.510 121 8/18/2025
6.0.509 126 8/18/2025
6.0.508 129 8/13/2025
6.0.506 129 8/13/2025
6.0.505 126 8/13/2025
6.0.504 136 8/13/2025
6.0.503 128 8/13/2025
6.0.502 129 8/12/2025
6.0.501 126 8/12/2025
6.0.500 132 8/12/2025
6.0.499 130 8/12/2025
6.0.498 127 8/11/2025
6.0.497 163 8/8/2025
6.0.496 169 8/8/2025
6.0.495 169 8/8/2025
6.0.494 197 8/8/2025
6.0.493 206 8/7/2025
6.0.492 204 8/7/2025
6.0.491 201 8/7/2025
6.0.490 206 8/7/2025
6.0.489 223 8/5/2025
6.0.488 218 8/5/2025
6.0.487 85 8/1/2025
6.0.486 103 7/30/2025
6.0.485 92 7/28/2025
6.0.484 89 7/28/2025
6.0.483 94 7/28/2025
6.0.482 96 7/28/2025
6.0.481 94 7/28/2025
6.0.480 355 7/25/2025
6.0.479 380 7/25/2025
6.0.478 375 7/25/2025
6.0.477 389 7/25/2025
6.0.476 391 7/25/2025
6.0.475 439 7/24/2025
6.0.474 438 7/24/2025
6.0.473 512 7/23/2025
6.0.472 512 7/23/2025
6.0.470 508 7/23/2025
6.0.469 513 7/23/2025
6.0.468 509 7/23/2025
6.0.467 522 7/23/2025
6.0.466 528 7/23/2025
6.0.465 529 7/23/2025
6.0.464 528 7/23/2025
6.0.463 526 7/23/2025
6.0.462 524 7/22/2025
6.0.461 525 7/22/2025
6.0.460 410 7/21/2025
6.0.459 88 7/18/2025
6.0.458 99 7/18/2025
6.0.457 132 7/17/2025
6.0.456 139 7/17/2025
6.0.455 135 7/17/2025