public void Apply(DrpParticipationChangedEvent @event) { Version++; var holding = _Holdings[@event.Holding]; holding.ChangeDrpParticipation(@event.ParticipateInDrp); }
public void ChangeDrpParticipation(Guid stockId, bool participateInDrp) { var holding = _Holdings[stockId]; if (holding == null) { throw new ArgumentException("No holding found"); } var @event = new DrpParticipationChangedEvent(Id, Version, holding.Id, participateInDrp); Apply(@event); PublishEvent(@event); }