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 PostCommand(ICommand command) { using var scope = host.Services.CreateScope(); var mediator = scope.ServiceProvider.GetRequiredService(); var response = await mediator.Send(command); return response; } public async Task PostQuery(IQuery query) { using var scope = host.Services.CreateScope(); var mediator = scope.ServiceProvider.GetRequiredService(); var response = await mediator.Send(query); return response; } }