![]() |
VOOZH | about |
dotnet add package Reo.Core.Application.Abstractions.MediatR --version 10.0.210
NuGet\Install-Package Reo.Core.Application.Abstractions.MediatR -Version 10.0.210
<PackageReference Include="Reo.Core.Application.Abstractions.MediatR" Version="10.0.210" />
<PackageVersion Include="Reo.Core.Application.Abstractions.MediatR" Version="10.0.210" />Directory.Packages.props
<PackageReference Include="Reo.Core.Application.Abstractions.MediatR" />Project file
paket add Reo.Core.Application.Abstractions.MediatR --version 10.0.210
#r "nuget: Reo.Core.Application.Abstractions.MediatR, 10.0.210"
#:package Reo.Core.Application.Abstractions.MediatR@10.0.210
#addin nuget:?package=Reo.Core.Application.Abstractions.MediatR&version=10.0.210Install as a Cake Addin
#tool nuget:?package=Reo.Core.Application.Abstractions.MediatR&version=10.0.210Install as a Cake Tool
Пакет 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
Добавьте сервисы в контейнер зависимостей с помощью метода расширения:
services.AddReoApplicationServices<YourAssembly>();
Замените Reo.Core.Application.Abstractions.MediatR на сборку вашего проекта.
N/A. Пакет не требует дополнительной конфигурации.
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;
}
}
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);
}
}
[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.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.210 | 0 | 6/18/2026 |
| 10.0.209 | 50 | 6/17/2026 |
| 10.0.208 | 53 | 6/17/2026 |
| 10.0.207 | 58 | 6/17/2026 |
| 10.0.206 | 60 | 6/17/2026 |
| 10.0.205 | 66 | 6/16/2026 |
| 10.0.204 | 53 | 6/16/2026 |
| 10.0.203 | 56 | 6/16/2026 |
| 10.0.202 | 55 | 6/16/2026 |
| 10.0.201 | 63 | 6/16/2026 |
| 10.0.200 | 62 | 6/16/2026 |
| 10.0.199 | 60 | 6/16/2026 |
| 10.0.198 | 54 | 6/16/2026 |
| 10.0.197 | 82 | 6/16/2026 |
| 10.0.196 | 62 | 6/16/2026 |
| 10.0.195 | 69 | 6/15/2026 |
| 10.0.194 | 74 | 6/15/2026 |
| 10.0.193 | 68 | 6/15/2026 |
| 10.0.192 | 70 | 6/11/2026 |
| 10.0.191 | 71 | 6/11/2026 |