Zabrałem się ostatnio za SignalR i w tutorialu znalazłem taki kod:
public class PlaceOrderRequestHandler : IRequestHandler<PlaceOrderCommand>
{
private readonly IMediator _mediator;
public PlaceOrderRequestHandler(IMediator mediator)
{
_mediator = mediator;
}
public async Task<Unit> Handle(PlaceOrderCommand request, CancellationToken cancellationToken)
{
// Manipulate your domain object
// Persist it
// Publish events
// Wait for the matter of the example
await Task.Delay(2000, cancellationToken);
// po co?
await _mediator.Publish(new OrderPlacedEvent { OrderId = Guid.NewGuid() }, cancellationToken);
return Unit.Value;
}
}
Co takiego daje wysłanie zdarzenia, czego nie daje po prostu wywołanie jakiegoś _notificationService.SendOrderPlacedNotification(@event)
?