Uma aplicação web terá muitas qualidades, porém existe um lado negro que devemos estar atentos e é que ela terá muitos erros, embora possamos tomar todos os cuidados e fazer todos os testes unitários, sempre haverá casos e situações que não vimos, que podem explodir em um ambiente de produção.
Quando um erro fatal é acionado, a última coisa que queremos é que o usuário veja a mensagem de erro que ele nos fornece. ASP.NET MVC, é por isso que devemos aprender a lidar com erros Y exceções para que possamos orientar nosso aplicativo sobre como resolver o problema.
Lidando com um erro na ASP.NET MVC
Quando trabalhamos com pedidos HTTP e com a entrada do usuário algo pode dar errado e é nosso trabalho tentar minimizar isso, embora não possamos saber todos os casos, se pudermos criar um componente que trate de uma forma particular os erros que não conhecemos .
A estrutura nos permite estabelecer páginas de erro personalizadas se ativarmos a opção correspondente, portanto, se ocorrer um erro ou exceção que não manejamos podemos mostrar uma página menos fatal que a clássica de ASP.NET MVC que podemos ver na seguinte imagem:
Embora possamos descartar a mensagem de que há algo preocupante, se virmos o código-fonte de onde o erro aconteceu, isso pode levar a falhas de segurança, por isso é importante que esta página nunca seja vista em produção.
Página de erro personalizada
Embora não ter erros seja o estado ideal, mas em si é uma utopia, por isso devemos conviver com a questão dos problemas e que eles sempre ocorrerão, em ASP.NET MVC podemos ter três maneiras de lidar com isso.
O primeiro é mostrar a página padrão que vimos na imagem anterior em todos os momentos para que quando ocorrer um erro o veremos, com todos os riscos que isso acarreta. O segundo status está apenas mostrando nossa página de erro customizada, isso nos ajuda a não deixar o código-fonte de nosso aplicativo aparecer.
E finalmente o terceiro status e um dos mais úteis, que apenas a página de erro personalizada é vista quando o aplicativo é acessado de um endereço remoto, este último modo nos ajuda a depurar, pois se executarmos o aplicativo e navegarmos nele localhost veremos a página padrão dos erros e assim nos ajudamos com todos os detalhes, mas se for um cliente que se conecta de outra máquina, você verá apenas o erro personalizado.
Estados de usoPara usar esses três estados, só precisamos alterar a diretiva customErrors, com os valores desativados, ativados e RemoteOnly Para cada um dos estados descritos acima, respectivamente, podemos colocar a página personalizada dos erros.
Vamos ver na imagem a seguir um exemplo de código de como ajustar essa diretiva do arquivo de configuração:
Vemos que podemos definir páginas específicas para erros conhecidos como not found ou 404, também podemos fazer isso com o erro 500 e outros códigos, com isso finalizamos este tutorial com o qual aprendemos um pouco a forma básica de lidar com erros em ASP.NET MVC.
Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo