public async Task HandleAsync(IDomainEvent <VehicleAggregate, VehicleId, VehicleRegisteredEvent> domainEvent, CancellationToken cancellationToken) { var existing = await _vehicleSearchableReadModelStore .FindAsync( x => string.Equals(domainEvent.AggregateEvent.Vehicle.LicensePlateNumber, x.LicensePlateNumber, StringComparison.CurrentCultureIgnoreCase), cancellationToken); if (existing == null) { await _commandBus.PublishAsync(new VehicleRegisterCompleteCommand(domainEvent.AggregateEvent.Vehicle), cancellationToken); } }
public async Task <IEnumerable <MovieEntity> > ListMovie(CancellationToken ctx) { var readModel = await _readModelStore.FindAsync(x => true, ctx); return(readModel.Select(x => x.ToMovie()).ToList()); }