25 lines
No EOL
823 B
C#
25 lines
No EOL
823 B
C#
using Femto.Common.Domain;
|
|
using MediatR;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Microsoft.Extensions.Hosting;
|
|
|
|
namespace Femto.Modules.Media.Application;
|
|
|
|
public class MediaModule(IHost host) : IMediaModule
|
|
{
|
|
public async Task<TResult> PostCommand<TResult>(ICommand<TResult> command)
|
|
{
|
|
using var scope = host.Services.CreateScope();
|
|
var mediator = scope.ServiceProvider.GetRequiredService<IMediator>();
|
|
var response = await mediator.Send(command);
|
|
return response;
|
|
}
|
|
|
|
public async Task<TResult> PostQuery<TResult>(IQuery<TResult> query)
|
|
{
|
|
using var scope = host.Services.CreateScope();
|
|
var mediator = scope.ServiceProvider.GetRequiredService<IMediator>();
|
|
var response = await mediator.Send(query);
|
|
return response;
|
|
}
|
|
} |