2
respostas

Retornar uma mensagem de exception?

E quando ele tentar excluir um registro que possui relacionamentos e cair em uma Exception? Como tratar e enviar essa mensagem ao requisitante?

2 respostas

Olá Fernando!

Nesse tipo de caso, sua aplicação deve conseguir fazer exclusão em cascata, deletando as referências deste dado.

Se uma API dá essa possibilidade de deletar um dado ao passar um comando para isso, ela tem que ser capaz de executar :)

Essa API do curso usa o Entity Framework Core e as tabelas criadas por ele, já tem uma instrução para deletar informações externas por meio do comando ON DELETE CASCADE. Essa instrução faz todo o percurso de exclusão por meio das chaves estrangeiras.

Nesta imagem, registros em outras duas tabelas serão excluídos caso um registro seja excluído desta tabela [ItemPedido].

Ou seja, isso não deve acontecer :)

Espero ter ajudado!

Complementando: Pode ter casos que ao invés de deletar o registro, pode colocar em um estado de "suspensão", como nas redes que o usuário pede para excluir a conta, mas ainda consegue reativar a conta. Ou caso a exclusão implicará em apagar dados sensíveis como movimentações financeiras ou coisa do tipo.

Exclusão de dados só pode ser permitido em casos que esses dados realmente podem ser excluídos sem problemas.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software