Reo.Core.Application.Abstractions.MediatorGenerator 8.0.542

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 8.0.542
                    
NuGet\Install-Package Reo.Core.Application.Abstractions.MediatorGenerator -Version 8.0.542
                    
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="8.0.542" />
                    
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="8.0.542" />
                    
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 8.0.542
                    
#r "nuget: Reo.Core.Application.Abstractions.MediatorGenerator, 8.0.542"
                    
#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@8.0.542
                    
#: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=8.0.542
                    
Install as a Cake Addin
#tool nuget:?package=Reo.Core.Application.Abstractions.MediatorGenerator&version=8.0.542
                    
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.554 0 9/11/2025
8.0.553 0 9/11/2025
8.0.552 0 9/11/2025
8.0.551 0 9/11/2025
8.0.550 0 9/11/2025
8.0.548 0 9/11/2025
8.0.547 6 9/11/2025
8.0.546 3 9/11/2025
8.0.545 12 9/11/2025
8.0.544 47 9/10/2025
8.0.543 48 9/10/2025
8.0.542 45 9/10/2025
8.0.541 50 9/10/2025
8.0.540 47 9/9/2025
8.0.539 43 9/9/2025
8.0.538 45 9/9/2025
8.0.537 43 9/9/2025
8.0.536 45 9/9/2025
8.0.535 45 9/9/2025
8.0.534 47 9/9/2025
8.0.533 44 9/9/2025
8.0.532 48 9/8/2025
8.0.531 104 9/5/2025
8.0.530 140 9/4/2025
8.0.529 128 9/4/2025
8.0.528 137 9/4/2025
8.0.527 135 9/4/2025
8.0.526 140 9/3/2025
8.0.525 119 9/2/2025
8.0.524 124 9/2/2025
8.0.523 123 9/2/2025
8.0.522 177 8/28/2025
8.0.521 173 8/27/2025
8.0.520 179 8/27/2025
8.0.519 176 8/27/2025
8.0.518 175 8/27/2025
8.0.517 147 8/25/2025
8.0.516 267 8/25/2025
8.0.515 197 8/24/2025
8.0.514 127 8/21/2025
8.0.513 130 8/20/2025
8.0.512 123 8/20/2025
8.0.511 129 8/20/2025
8.0.510 126 8/18/2025
8.0.509 123 8/18/2025
8.0.508 133 8/13/2025
8.0.506 130 8/13/2025
8.0.505 136 8/13/2025
8.0.504 140 8/13/2025
8.0.503 133 8/13/2025
8.0.502 130 8/12/2025
8.0.501 131 8/12/2025
8.0.500 128 8/12/2025
8.0.499 143 8/12/2025
8.0.498 125 8/11/2025
8.0.497 164 8/8/2025
8.0.496 168 8/8/2025
8.0.495 171 8/8/2025
8.0.494 197 8/8/2025
8.0.493 208 8/7/2025
8.0.492 204 8/7/2025
8.0.491 207 8/7/2025
8.0.490 194 8/7/2025
8.0.489 199 8/5/2025
8.0.488 203 8/5/2025
8.0.487 77 8/1/2025
8.0.486 98 7/30/2025
8.0.485 103 7/28/2025
8.0.484 94 7/28/2025
8.0.483 100 7/28/2025
8.0.482 94 7/28/2025
8.0.481 95 7/28/2025
8.0.480 353 7/25/2025
8.0.479 378 7/25/2025
8.0.478 378 7/25/2025
8.0.477 389 7/25/2025
8.0.476 392 7/25/2025
8.0.475 442 7/24/2025
8.0.474 443 7/24/2025
8.0.473 506 7/23/2025
8.0.472 507 7/23/2025
8.0.470 506 7/23/2025
8.0.469 509 7/23/2025
8.0.468 506 7/23/2025
8.0.467 507 7/23/2025
8.0.466 508 7/23/2025
8.0.465 506 7/23/2025
8.0.464 505 7/23/2025
8.0.463 503 7/23/2025
8.0.462 512 7/22/2025
8.0.461 503 7/22/2025
8.0.460 394 7/21/2025
8.0.459 72 7/18/2025
8.0.458 84 7/18/2025
8.0.457 120 7/17/2025
8.0.456 122 7/17/2025
8.0.455 112 7/17/2025
8.0.454 116 7/17/2025
8.0.453 114 7/17/2025
8.0.452 114 7/17/2025
8.0.451 115 7/17/2025
8.0.450 113 7/17/2025
8.0.449 117 7/17/2025
8.0.448 114 7/17/2025
8.0.447 114 7/16/2025
8.0.446 117 7/16/2025
8.0.445 119 7/16/2025
8.0.444 121 7/16/2025
8.0.443 115 7/16/2025
8.0.442 116 7/16/2025
8.0.439 118 7/15/2025
8.0.438 117 7/15/2025
8.0.437 115 7/15/2025
8.0.436 115 7/15/2025
8.0.435 116 7/15/2025
8.0.433 121 7/14/2025
8.0.432 116 7/14/2025
8.0.431 104 7/11/2025
8.0.430 106 7/11/2025
8.0.429 123 7/10/2025
8.0.428 120 7/10/2025
8.0.427 120 7/9/2025
8.0.426 122 7/8/2025
8.0.425 126 7/8/2025
8.0.424 123 7/8/2025
8.0.423 117 7/8/2025
8.0.422 122 7/8/2025
8.0.421 123 7/8/2025
8.0.420 119 7/7/2025
8.0.419 122 7/7/2025
8.0.418 120 7/7/2025
8.0.417 117 7/7/2025
8.0.416 118 7/6/2025
8.0.415 86 7/4/2025
8.0.414 89 7/4/2025
8.0.411 126 7/3/2025
8.0.410 121 7/3/2025
8.0.409 121 7/3/2025
8.0.408 119 7/1/2025
8.0.407 123 7/1/2025
8.0.406 120 7/1/2025
8.0.405 121 7/1/2025
8.0.404 162 6/26/2025
8.0.403 115 6/26/2025
8.0.401 138 6/24/2025
8.0.400 119 6/24/2025
8.0.399 120 6/23/2025
8.0.398 122 6/23/2025
8.0.397 79 6/20/2025
8.0.396 124 6/19/2025
8.0.395 127 6/18/2025
8.0.394 125 6/18/2025
8.0.392 129 6/18/2025
8.0.390 131 6/18/2025
6.0.554 0 9/11/2025
6.0.553 0 9/11/2025
6.0.552 0 9/11/2025
6.0.551 0 9/11/2025
6.0.550 0 9/11/2025
6.0.548 0 9/11/2025
6.0.547 4 9/11/2025
6.0.546 2 9/11/2025
6.0.545 12 9/11/2025
6.0.544 43 9/10/2025
6.0.543 47 9/10/2025
6.0.542 46 9/10/2025
6.0.541 46 9/10/2025
6.0.540 39 9/9/2025
6.0.539 41 9/9/2025
6.0.538 42 9/9/2025
6.0.537 46 9/9/2025
6.0.536 44 9/9/2025
6.0.535 43 9/9/2025
6.0.534 43 9/9/2025
6.0.533 46 9/9/2025
6.0.532 51 9/8/2025
6.0.531 98 9/5/2025
6.0.530 133 9/4/2025
6.0.529 134 9/4/2025
6.0.528 132 9/4/2025
6.0.527 136 9/4/2025
6.0.526 134 9/3/2025
6.0.525 118 9/2/2025
6.0.524 123 9/2/2025
6.0.523 122 9/2/2025
6.0.522 174 8/28/2025
6.0.521 172 8/27/2025
6.0.520 171 8/27/2025
6.0.519 174 8/27/2025
6.0.518 175 8/27/2025
6.0.517 143 8/25/2025
6.0.516 262 8/25/2025
6.0.515 196 8/24/2025
6.0.514 123 8/21/2025
6.0.513 124 8/20/2025
6.0.512 122 8/20/2025
6.0.511 124 8/20/2025
6.0.510 122 8/18/2025
6.0.509 122 8/18/2025
6.0.508 131 8/13/2025
6.0.506 127 8/13/2025
6.0.505 127 8/13/2025
6.0.504 130 8/13/2025
6.0.503 129 8/13/2025
6.0.502 127 8/12/2025
6.0.501 128 8/12/2025
6.0.500 128 8/12/2025
6.0.499 133 8/12/2025
6.0.498 122 8/11/2025
6.0.497 163 8/8/2025
6.0.496 168 8/8/2025
6.0.495 171 8/8/2025
6.0.494 192 8/8/2025
6.0.493 207 8/7/2025
6.0.492 203 8/7/2025
6.0.491 200 8/7/2025
6.0.490 195 8/7/2025
6.0.489 199 8/5/2025
6.0.488 201 8/5/2025
6.0.487 64 8/1/2025
6.0.486 101 7/30/2025
6.0.485 93 7/28/2025
6.0.484 94 7/28/2025
6.0.483 98 7/28/2025
6.0.482 94 7/28/2025
6.0.481 95 7/28/2025
6.0.480 352 7/25/2025
6.0.479 377 7/25/2025
6.0.478 378 7/25/2025
6.0.477 388 7/25/2025
6.0.476 393 7/25/2025
6.0.475 444 7/24/2025
6.0.474 443 7/24/2025
6.0.473 504 7/23/2025
6.0.472 506 7/23/2025
6.0.470 505 7/23/2025
6.0.469 505 7/23/2025
6.0.468 504 7/23/2025
6.0.467 507 7/23/2025
6.0.466 508 7/23/2025
6.0.465 501 7/23/2025
6.0.464 503 7/23/2025
6.0.463 504 7/23/2025
6.0.462 502 7/22/2025
6.0.461 504 7/22/2025
6.0.460 388 7/21/2025
6.0.459 68 7/18/2025
6.0.458 84 7/18/2025
6.0.457 114 7/17/2025
6.0.456 112 7/17/2025
6.0.455 112 7/17/2025