public DTO.Address Save(DTO.Address address, Guid accountCode) { using (var transaction = Connection.BeginTransaction()) { try { if (!address.IsNull()) { var newAddress = address.Transfer(); var _address = accountService.SaveOrUpdateAddress(newAddress, accountCode) as VO.AddressCustomer; address.AddressCustomerCode = _address.AddressCustomerCode; } else { throw new ArgumentException("É preciso preencher os dados do endereço."); } } catch (Exception) { transaction.Rollback(); throw; } } return(address); }