public void AddChild(Parent parent, Child child) { Raise(ChildAddedDomainEvent.Create(this, parent.Id, child.Id, child.GetName(), child.GetBirthDate())); }
private void When(ChildAddedDomainEvent domainEvent) { children = children ?? new List <Child>(); Child child = Child.Create( domainEvent.ChildId, domainEvent.Name, domainEvent.BirthDate, Custody.Create(CustodyEnum.ChildConfirmedWithFamily)); children.Add(child); foreach (Parent parent in parents) { if (parent.Id == domainEvent.ParentId) { parent.AddChild(child); } } }