Reo.Core.Application.Abstractions.MediatorGenerator 6.0.570

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

Reo.Core.Application.Abstractions.MediatorGenerator

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

Пакет Reo.Core.Application.Abstractions.MediatorGenerator предоставляет абстракции и утилиты для построения прикладных сервисов, которые обрабатывают запросы и выполняют команды домена. Он помогает структурировать приложение, разделяя логику приложения и домена, и обеспечивает централизованное управление командами через паттерн MediatR (или аналогичные подходы).

Решаемые проблемы:

  • Упрощение реализации сервисов приложения, которые взаимодействуют с доменными объектами.
  • Централизованное выполнение команд и обработка запросов.
  • Поддержка инъекции зависимостей и модульного расширения функционала.

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

1. IReoApplicationService<TDomainCommandsExecutor, TQuery>

Интерфейс, определяющий контракт для сервиса приложения. Каждый сервис должен реализовывать метод ExecuteAsync, который обрабатывает запрос и возвращает исполнителя доменных команд.

2. ReoApplicationService<TDomainCommandsExecutor, TQuery>

Базовый класс, реализующий IReoApplicationService. Обеспечивает стандартную логику выполнения команд, логирование и инъекцию зависимостей.

3. ServiceCollectionExtensions

Класс с методами расширения для регистрации сервисов приложения в контейнере DI (Dependency Injection). Используется для автоматической регистрации всех типов, реализующих IReoApplicationService.


Требования


Установка

NuGet Package Manager

Install-Package Reo.Core.Application.Abstractions.MediatorGenerator

.NET CLI

dotnet add package Reo.Core.Application.Abstractions.MediatorGenerator

Настройка

Регистрация в DI-контейнере (ASP.NET Core)

Добавьте сервисы в Startup.cs или Program.cs:

services.AddReoApplicationServices<YourAssembly>();

Замените YourAssembly на сборку, содержащую реализации IReoApplicationService.

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

N/A — в данном пакете не требуется настройка через конфигурационные файлы.


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

Пример 1: Реализация сервиса приложения

public class SampleApplicationService : ReoApplicationService<SampleCommandExecutor, SampleQuery>
{
    public SampleApplicationService(IServiceProvider serviceProvider) : base(serviceProvider)
    {
    }

    protected override async Task<SampleCommandExecutor> ExecuteCoreAsync(SampleQuery query, CancellationToken cancellationToken)
    {
        // Обработка запроса и выполнение команд
        var result = await new SampleCommandExecutor().ExecuteAsync(query, cancellationToken);
        return result;
    }
}

Пример 2: Регистрация сервиса в DI

public void ConfigureServices(IServiceCollection services)
{
    services.AddReoApplicationServices<YourProject.Assembly>();
}

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

[ApiController]
[Route("api/[controller]")]
public class SampleController : ControllerBase
{
    private readonly IReoApplicationService<SampleCommandExecutor, SampleQuery> _service;

    public SampleController(IReoApplicationService<SampleCommandExecutor, SampleQuery> service)
    {
        _service = service;
    }

    [HttpPost]
    public async Task<IActionResult> ProcessQuery([FromBody] SampleQuery query)
    {
        var result = await _service.ExecuteAsync(query, CancellationToken.None);
        return Ok(result);
    }
}

Лицензия

Этот пакет распространяется под лицензией 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.583 63 9/26/2025
8.0.582 90 9/26/2025
8.0.580 115 9/25/2025
8.0.579 116 9/25/2025
8.0.578 116 9/25/2025
8.0.577 117 9/25/2025
8.0.576 118 9/25/2025
8.0.575 118 9/25/2025
8.0.574 133 9/24/2025
8.0.573 128 9/23/2025
8.0.572 124 9/23/2025
8.0.571 127 9/23/2025
8.0.570 126 9/23/2025
8.0.569 138 9/22/2025
8.0.568 139 9/22/2025
8.0.567 137 9/22/2025
8.0.566 145 9/21/2025
8.0.565 209 9/19/2025
8.0.564 212 9/19/2025
8.0.563 217 9/19/2025
8.0.562 220 9/19/2025
8.0.561 266 9/16/2025
8.0.560 269 9/16/2025
8.0.559 270 9/16/2025
8.0.558 271 9/16/2025
8.0.557 219 9/15/2025
8.0.556 219 9/15/2025
8.0.555 97 9/12/2025
8.0.554 141 9/11/2025
8.0.553 138 9/11/2025
8.0.552 141 9/11/2025
8.0.551 139 9/11/2025
8.0.550 139 9/11/2025
8.0.548 134 9/11/2025
8.0.547 140 9/11/2025
8.0.546 137 9/11/2025
8.0.545 136 9/11/2025
8.0.544 131 9/10/2025
8.0.543 131 9/10/2025
8.0.542 131 9/10/2025
8.0.541 135 9/10/2025
8.0.540 131 9/9/2025
8.0.539 128 9/9/2025
8.0.538 130 9/9/2025
8.0.537 128 9/9/2025
8.0.536 128 9/9/2025
8.0.535 128 9/9/2025
8.0.534 131 9/9/2025
8.0.533 127 9/9/2025
8.0.532 126 9/8/2025
8.0.531 109 9/5/2025
8.0.530 143 9/4/2025
8.0.529 132 9/4/2025
8.0.528 142 9/4/2025
8.0.527 141 9/4/2025
8.0.526 143 9/3/2025
8.0.525 121 9/2/2025
8.0.524 127 9/2/2025
8.0.523 126 9/2/2025
8.0.522 180 8/28/2025
8.0.521 175 8/27/2025
8.0.520 181 8/27/2025
8.0.519 179 8/27/2025
8.0.518 177 8/27/2025
8.0.517 150 8/25/2025
8.0.516 269 8/25/2025
8.0.515 199 8/24/2025
8.0.514 129 8/21/2025
8.0.513 132 8/20/2025
8.0.512 125 8/20/2025
8.0.511 132 8/20/2025
8.0.510 128 8/18/2025
8.0.509 126 8/18/2025
8.0.508 135 8/13/2025
8.0.506 133 8/13/2025
8.0.505 138 8/13/2025
8.0.504 143 8/13/2025
8.0.503 135 8/13/2025
8.0.502 132 8/12/2025
8.0.501 133 8/12/2025
8.0.500 130 8/12/2025
8.0.499 145 8/12/2025
8.0.498 127 8/11/2025
8.0.497 167 8/8/2025
8.0.496 170 8/8/2025
8.0.495 173 8/8/2025
8.0.494 199 8/8/2025
8.0.493 210 8/7/2025
8.0.492 206 8/7/2025
8.0.491 210 8/7/2025
8.0.490 197 8/7/2025
8.0.489 201 8/5/2025
8.0.488 205 8/5/2025
8.0.487 79 8/1/2025
8.0.486 100 7/30/2025
8.0.485 123 7/28/2025
8.0.484 110 7/28/2025
8.0.483 119 7/28/2025
8.0.482 116 7/28/2025
8.0.481 116 7/28/2025
8.0.480 374 7/25/2025
8.0.479 400 7/25/2025
8.0.478 404 7/25/2025
8.0.477 411 7/25/2025
8.0.476 414 7/25/2025
8.0.475 467 7/24/2025
8.0.474 466 7/24/2025
8.0.473 516 7/23/2025
8.0.472 516 7/23/2025
8.0.470 513 7/23/2025
8.0.469 516 7/23/2025
8.0.468 513 7/23/2025
8.0.467 514 7/23/2025
8.0.466 515 7/23/2025
8.0.465 514 7/23/2025
8.0.464 514 7/23/2025
8.0.463 511 7/23/2025
8.0.462 514 7/22/2025
8.0.461 505 7/22/2025
8.0.460 399 7/21/2025
8.0.459 74 7/18/2025
8.0.458 86 7/18/2025
8.0.457 122 7/17/2025
8.0.456 124 7/17/2025
8.0.455 114 7/17/2025
8.0.454 118 7/17/2025
8.0.453 116 7/17/2025
8.0.452 116 7/17/2025
8.0.451 118 7/17/2025
8.0.450 116 7/17/2025
8.0.449 120 7/17/2025
8.0.448 118 7/17/2025
8.0.447 117 7/16/2025
8.0.446 119 7/16/2025
8.0.445 123 7/16/2025
8.0.444 123 7/16/2025
8.0.443 118 7/16/2025
8.0.442 119 7/16/2025
8.0.439 121 7/15/2025
8.0.438 120 7/15/2025
8.0.437 118 7/15/2025
8.0.436 118 7/15/2025
8.0.435 119 7/15/2025
8.0.433 123 7/14/2025
8.0.432 118 7/14/2025
8.0.431 106 7/11/2025
8.0.430 108 7/11/2025
8.0.429 125 7/10/2025
8.0.428 122 7/10/2025
8.0.427 122 7/9/2025
8.0.426 124 7/8/2025
8.0.425 128 7/8/2025
8.0.424 125 7/8/2025
8.0.423 119 7/8/2025
8.0.422 124 7/8/2025
8.0.421 125 7/8/2025
8.0.420 121 7/7/2025
8.0.419 125 7/7/2025
8.0.418 122 7/7/2025
8.0.417 119 7/7/2025
8.0.416 120 7/6/2025
8.0.415 88 7/4/2025
8.0.414 91 7/4/2025
8.0.411 128 7/3/2025
8.0.410 123 7/3/2025
8.0.409 124 7/3/2025
8.0.408 123 7/1/2025
8.0.407 125 7/1/2025
8.0.406 123 7/1/2025
8.0.405 123 7/1/2025
8.0.404 184 6/26/2025
8.0.403 117 6/26/2025
8.0.401 140 6/24/2025
8.0.400 122 6/24/2025
8.0.399 122 6/23/2025
8.0.398 124 6/23/2025
8.0.397 81 6/20/2025
8.0.396 126 6/19/2025
8.0.395 129 6/18/2025
8.0.394 127 6/18/2025
8.0.392 131 6/18/2025
8.0.390 133 6/18/2025
6.0.583 62 9/26/2025
6.0.582 84 9/26/2025
6.0.580 117 9/25/2025
6.0.579 112 9/25/2025
6.0.578 111 9/25/2025
6.0.577 115 9/25/2025
6.0.576 118 9/25/2025
6.0.575 116 9/25/2025
6.0.574 127 9/24/2025
6.0.573 127 9/23/2025
6.0.572 125 9/23/2025
6.0.571 125 9/23/2025
6.0.570 124 9/23/2025
6.0.569 132 9/22/2025
6.0.568 133 9/22/2025
6.0.567 136 9/22/2025
6.0.566 142 9/21/2025
6.0.565 206 9/19/2025
6.0.564 209 9/19/2025
6.0.563 212 9/19/2025
6.0.562 218 9/19/2025
6.0.561 262 9/16/2025
6.0.560 268 9/16/2025
6.0.559 267 9/16/2025
6.0.558 267 9/16/2025
6.0.557 212 9/15/2025
6.0.556 216 9/15/2025
6.0.555 90 9/12/2025
6.0.554 137 9/11/2025
6.0.553 136 9/11/2025
6.0.552 136 9/11/2025
6.0.551 134 9/11/2025
6.0.550 139 9/11/2025
6.0.548 135 9/11/2025
6.0.547 137 9/11/2025
6.0.546 136 9/11/2025
6.0.545 135 9/11/2025
6.0.544 125 9/10/2025
6.0.543 131 9/10/2025
6.0.542 129 9/10/2025
6.0.541 130 9/10/2025
6.0.540 125 9/9/2025
6.0.539 124 9/9/2025
6.0.538 125 9/9/2025
6.0.537 128 9/9/2025
6.0.536 127 9/9/2025
6.0.535 128 9/9/2025
6.0.534 126 9/9/2025
6.0.533 129 9/9/2025
6.0.532 129 9/8/2025
6.0.531 103 9/5/2025
6.0.530 136 9/4/2025
6.0.529 138 9/4/2025
6.0.528 137 9/4/2025
6.0.527 140 9/4/2025
6.0.526 137 9/3/2025
6.0.525 120 9/2/2025
6.0.524 125 9/2/2025
6.0.523 125 9/2/2025
6.0.522 177 8/28/2025
6.0.521 174 8/27/2025
6.0.520 173 8/27/2025
6.0.519 176 8/27/2025
6.0.518 177 8/27/2025
6.0.517 145 8/25/2025
6.0.516 264 8/25/2025
6.0.515 199 8/24/2025
6.0.514 125 8/21/2025
6.0.513 126 8/20/2025
6.0.512 124 8/20/2025
6.0.511 127 8/20/2025
6.0.510 124 8/18/2025
6.0.509 125 8/18/2025
6.0.508 133 8/13/2025
6.0.506 130 8/13/2025
6.0.505 130 8/13/2025
6.0.504 132 8/13/2025
6.0.503 131 8/13/2025
6.0.502 129 8/12/2025
6.0.501 130 8/12/2025
6.0.500 130 8/12/2025
6.0.499 135 8/12/2025
6.0.498 124 8/11/2025
6.0.497 166 8/8/2025
6.0.496 170 8/8/2025
6.0.495 173 8/8/2025
6.0.494 194 8/8/2025
6.0.493 209 8/7/2025
6.0.492 206 8/7/2025
6.0.491 203 8/7/2025
6.0.490 198 8/7/2025
6.0.489 201 8/5/2025
6.0.488 203 8/5/2025
6.0.487 67 8/1/2025
6.0.486 103 7/30/2025
6.0.485 113 7/28/2025
6.0.484 111 7/28/2025
6.0.483 117 7/28/2025
6.0.482 112 7/28/2025
6.0.481 114 7/28/2025
6.0.480 376 7/25/2025
6.0.479 401 7/25/2025
6.0.478 403 7/25/2025
6.0.477 412 7/25/2025
6.0.476 418 7/25/2025
6.0.475 468 7/24/2025
6.0.474 466 7/24/2025
6.0.473 514 7/23/2025
6.0.472 515 7/23/2025
6.0.470 513 7/23/2025
6.0.469 513 7/23/2025
6.0.468 511 7/23/2025
6.0.467 514 7/23/2025
6.0.466 515 7/23/2025
6.0.465 510 7/23/2025
6.0.464 512 7/23/2025
6.0.463 512 7/23/2025
6.0.462 504 7/22/2025
6.0.461 506 7/22/2025
6.0.460 393 7/21/2025
6.0.459 70 7/18/2025
6.0.458 86 7/18/2025
6.0.457 116 7/17/2025
6.0.456 114 7/17/2025
6.0.455 115 7/17/2025