public async Task UpdateAsync(int id, PessoaFisicaRequestDto model) { var pessoa = await _repo.GetByIdAsync(id); if (pessoa == null) { throw new Exception($"Pessoa Física com o id {id} não encontrada"); } pessoa.UpdateValues( model.Nome, model.Telefone, model.Endereco, model.Email, model.Cpf, model.GeneroId, model.DataNascimento ); var validationResult = await pessoa.Validate(); if (!validationResult.IsValid) { var msg = "Ocorreu os seguintes erros:\n"; foreach (var erro in validationResult.Errors) { msg = $"{msg}- {erro.ErrorMessage}\n"; } throw new Exception(msg); } await _repo.UpdateAsync(pessoa); }