public void Handle(AddAddressEventCommand message) { var address = new Address(message.Id, message.Address1, message.Address2, message.ZipCode, message.City, message.Province, message.EventId.Value); if (!address.IsValid()) { NotifyValidationError(address.ValidationResult); return; } _eventRepository.AddAddress(address); if (Commit()) { _bus.RaiseEvent(new AddressEventAddedEvent(address.Id, address.Address1, address.Address2, address.ZipCode, address.City, address.Province, address.EventId.Value)); } }