public async Task <PassengerAdditionResource> AddPassenger(string bookingId, Domain.Booking.Passenger passenger)
        {
            passenger = new PassengerBuilder().CreatePassenger();

            var command = new AddPassengerCommand(new BookingId(bookingId), passenger);
            await _commandBus.PublishAsync(command, CancellationToken.None);

            return(new PassengerAdditionResource(Url, bookingId, passenger.PassengerKey));
        }
示例#2
0
        public static Passenger ToReadModel(this Domain.Booking.Passenger passenger)
        {
            var model = new Passenger
            {
                Id            = passenger.PassengerKey,
                PassengerKey  = passenger.PassengerKey,
                Name          = passenger.Name,
                PassengerType = (PassengerType)passenger.PassengerType,
                Age           = passenger.Age,
                Email         = passenger.Email,
            };

            return(model);
        }
 public AddPassengerCommand(BookingId aggregateId, Domain.Booking.Passenger passenger) : base(aggregateId)
 {
     Passenger = passenger;
 }