public void AddDependent(Commands.AddDependentToBenefitsEstimate cmd) { if (this.Dependents.Any(x => x.FirstName.Equals(cmd.FirstName, StringComparison.OrdinalIgnoreCase) && x.LastName.Equals(cmd.LastName, StringComparison.OrdinalIgnoreCase))) { throw new InvalidOperationException("Cannot add a duplicate dependent"); } else { var evt = new Events.DependentAdded(this.Id, cmd.FirstName, cmd.LastName); this.Emit(evt); //var estimate = this.BroadcastEstimate(); } }
public void Apply(Events.DependentAdded e) { this._dependents.Add(new Person(e.FirstName, e.LastName, Config.BaseAnnualDependentBenefitCost)); }