Reo.Core.Application.Abstractions.MediatorGenerator 8.0.477

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.477
                    
NuGet\Install-Package Reo.Core.Application.Abstractions.MediatorGenerator -Version 8.0.477
                    
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.477" />
                    
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.477" />
                    
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.477
                    
#r "nuget: Reo.Core.Application.Abstractions.MediatorGenerator, 8.0.477"
                    
#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.477
                    
#: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.477
                    
Install as a Cake Addin
#tool nuget:?package=Reo.Core.Application.Abstractions.MediatorGenerator&version=8.0.477
                    
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.521 0 8/27/2025
8.0.520 0 8/27/2025
8.0.519 0 8/27/2025
8.0.518 0 8/27/2025
8.0.517 34 8/25/2025
8.0.516 23 8/25/2025
8.0.515 22 8/24/2025
8.0.514 89 8/21/2025
8.0.513 92 8/20/2025
8.0.512 89 8/20/2025
8.0.511 94 8/20/2025
8.0.510 112 8/18/2025
8.0.509 109 8/18/2025
8.0.508 130 8/13/2025
8.0.506 127 8/13/2025
8.0.505 132 8/13/2025
8.0.504 136 8/13/2025
8.0.503 130 8/13/2025
8.0.502 125 8/12/2025
8.0.501 128 8/12/2025
8.0.500 125 8/12/2025
8.0.499 139 8/12/2025
8.0.498 122 8/11/2025
8.0.497 159 8/8/2025
8.0.496 164 8/8/2025
8.0.495 167 8/8/2025
8.0.494 193 8/8/2025
8.0.493 203 8/7/2025
8.0.492 200 8/7/2025
8.0.491 202 8/7/2025
8.0.490 190 8/7/2025
8.0.489 196 8/5/2025
8.0.488 200 8/5/2025
8.0.487 75 8/1/2025
8.0.486 96 7/30/2025
8.0.485 101 7/28/2025
8.0.484 92 7/28/2025
8.0.483 98 7/28/2025
8.0.482 92 7/28/2025
8.0.481 93 7/28/2025
8.0.480 351 7/25/2025
8.0.479 376 7/25/2025
8.0.478 376 7/25/2025
8.0.477 387 7/25/2025
8.0.476 390 7/25/2025
8.0.475 440 7/24/2025
8.0.474 441 7/24/2025
8.0.473 491 7/23/2025
8.0.472 490 7/23/2025
8.0.470 488 7/23/2025
8.0.469 494 7/23/2025
8.0.468 488 7/23/2025
8.0.467 488 7/23/2025
8.0.466 489 7/23/2025
8.0.465 488 7/23/2025
8.0.464 487 7/23/2025
8.0.463 487 7/23/2025
8.0.462 487 7/22/2025
8.0.461 481 7/22/2025
8.0.460 371 7/21/2025
8.0.459 51 7/18/2025
8.0.458 78 7/18/2025
8.0.457 117 7/17/2025
8.0.456 120 7/17/2025
8.0.455 110 7/17/2025
8.0.454 114 7/17/2025
8.0.453 112 7/17/2025
8.0.452 112 7/17/2025
8.0.451 112 7/17/2025
8.0.450 111 7/17/2025
8.0.449 114 7/17/2025
8.0.448 112 7/17/2025
8.0.447 112 7/16/2025
8.0.446 114 7/16/2025
8.0.445 117 7/16/2025
8.0.444 119 7/16/2025
8.0.443 113 7/16/2025
8.0.442 114 7/16/2025
8.0.439 116 7/15/2025
8.0.438 115 7/15/2025
8.0.437 113 7/15/2025
8.0.436 113 7/15/2025
8.0.435 114 7/15/2025
8.0.433 117 7/14/2025
8.0.432 113 7/14/2025
8.0.431 100 7/11/2025
8.0.430 102 7/11/2025
8.0.429 119 7/10/2025
8.0.428 116 7/10/2025
8.0.427 117 7/9/2025
8.0.426 118 7/8/2025
8.0.425 123 7/8/2025
8.0.424 120 7/8/2025
8.0.423 114 7/8/2025
8.0.422 117 7/8/2025
8.0.421 120 7/8/2025
8.0.420 116 7/7/2025
8.0.419 119 7/7/2025
8.0.418 117 7/7/2025
8.0.417 114 7/7/2025
8.0.416 115 7/6/2025
8.0.415 81 7/4/2025
8.0.414 86 7/4/2025
8.0.411 123 7/3/2025
8.0.410 118 7/3/2025
8.0.409 118 7/3/2025
8.0.408 115 7/1/2025
8.0.407 120 7/1/2025
8.0.406 117 7/1/2025
8.0.405 117 7/1/2025
8.0.404 135 6/26/2025
8.0.403 113 6/26/2025
8.0.401 136 6/24/2025
8.0.400 117 6/24/2025
8.0.399 118 6/23/2025
8.0.398 120 6/23/2025
8.0.397 77 6/20/2025
8.0.396 122 6/19/2025
8.0.395 125 6/18/2025
8.0.394 123 6/18/2025
8.0.392 126 6/18/2025
8.0.390 128 6/18/2025
6.0.521 0 8/27/2025
6.0.520 0 8/27/2025
6.0.519 0 8/27/2025
6.0.518 0 8/27/2025
6.0.517 30 8/25/2025
6.0.516 22 8/25/2025
6.0.515 20 8/24/2025
6.0.514 89 8/21/2025
6.0.513 86 8/20/2025
6.0.512 88 8/20/2025
6.0.511 89 8/20/2025
6.0.510 107 8/18/2025
6.0.509 108 8/18/2025
6.0.508 128 8/13/2025
6.0.506 124 8/13/2025
6.0.505 124 8/13/2025
6.0.504 127 8/13/2025
6.0.503 126 8/13/2025
6.0.502 122 8/12/2025
6.0.501 125 8/12/2025
6.0.500 125 8/12/2025
6.0.499 128 8/12/2025
6.0.498 119 8/11/2025
6.0.497 159 8/8/2025
6.0.496 163 8/8/2025
6.0.495 167 8/8/2025
6.0.494 187 8/8/2025
6.0.493 201 8/7/2025
6.0.492 199 8/7/2025
6.0.491 196 8/7/2025
6.0.490 191 8/7/2025
6.0.489 196 8/5/2025
6.0.488 199 8/5/2025
6.0.487 61 8/1/2025
6.0.486 99 7/30/2025
6.0.485 91 7/28/2025
6.0.484 92 7/28/2025
6.0.483 96 7/28/2025
6.0.482 92 7/28/2025
6.0.481 93 7/28/2025
6.0.480 350 7/25/2025
6.0.479 375 7/25/2025
6.0.478 376 7/25/2025
6.0.477 386 7/25/2025
6.0.476 390 7/25/2025
6.0.475 442 7/24/2025
6.0.474 441 7/24/2025
6.0.473 487 7/23/2025
6.0.472 487 7/23/2025
6.0.470 486 7/23/2025
6.0.469 490 7/23/2025
6.0.468 485 7/23/2025
6.0.467 488 7/23/2025
6.0.466 490 7/23/2025
6.0.465 486 7/23/2025
6.0.464 486 7/23/2025
6.0.463 487 7/23/2025
6.0.462 480 7/22/2025
6.0.461 482 7/22/2025
6.0.460 365 7/21/2025
6.0.459 47 7/18/2025
6.0.458 78 7/18/2025
6.0.457 110 7/17/2025
6.0.456 110 7/17/2025
6.0.455 110 7/17/2025