public Person Take(EmailAddressUpdateCommand command) { var mail = EmailAddresses.First(e => e.Id == command.Id); mail.CopyPropertiesFrom(command); base.AddEvent(new PersonEmailAddressUpdateDomainEvent { AggregateRootId = Id, CommandJson = JsonConvert.SerializeObject(command), UserId = command.UserId }); return(this); }
public Person Take(EmailAddressDeleteCommand command) { var mail = EmailAddresses.First(e => e.Id == command.MailAddressId); this.EmailAddresses.Remove(mail); base.AddEvent(new PersonEmailAddressDeletedDomainEvent { AggregateRootId = Id, CommandJson = JsonConvert.SerializeObject(command), UserId = command.UserId }); return(this); }