public static Event Create(string name, int capacity) { var fact = new EventCreatedFact { AggregateRootId = Guid.NewGuid(), Name = name, Capacity = capacity, }; var @event = new Event(); @event.Append(fact); @event.Apply(fact); return @event; }
public bool TryReserveTicketsFor(Event @event, int numTickets) { return @event.TryReserveTicketsFor(this, numTickets); }