public async Task DispatchAsync(TAggregate aggregate, IDomainEvent @event) { var eventHandler = _eventHandlerFactory.CreateHandler(@event.GetType()); await eventHandler.HandleAsync(aggregate, @event); }
public void Dispatch <T>(T @event) where T : IDomainEvent { _factory.CreateHandler <T>().ForEach(e => e.Handle(@event)); }