public void AddSeatReservationEvent(ViewingId viewingId, ushort seatNumber) { var seatReserved = new SeatReservedEvent(viewingId, new SeatId(seatNumber)); using (var session = ViewingFunctionalRepo.BeginSessionFor(viewingId).Result) { session.AddEvent(seatReserved); session.SaveChanges().Wait(); } }
public IViewingState Apply(IViewingState state, SeatReservedEvent envelope) { state.Seats[envelope.IdOfSeatToReserve.Id].IsReserved = true; return(state); }