Hola a todos, existevarias formasde maneras para manejar errores en aplicaciones Web, así como herramientas que permiten realizar log de los mismos como Log4Net, Enterprise Library o el escribir código y crear un pequeño manejador; sin embargo hoy quiero mostrarles otra forma de manejar errores, el cual es bastante sencillo.

Cuando se quiere manejar algún error, generalmente se utiliza un bloque try-catch, así por ejemplo para controlar el caso de una división por cero una aproximación podría ser:

try { //código } catch (DivideByZeroException ex) { //manejo del error }

Ahora, ASP.NET MVC ofrece una forma de realizar un manejo parecido a estos errores y es usando el atributo HandleError, siguiendo con el mismo ejemplo de la división por cero, la implementación de HandleError en una acción sería algo así:

[HandleError(ExceptionType = typeof(DivideByZeroException), View = "OperationError")] public ActionResult Index() { var num2 = 0; var result = 5 / num2; return View(result); }

Allí se usan dos parámetros, ExceptionType para especificar el tipo de la excepción y View par definir la vista a la cual se debe re direccionar cuando ocurra el error, un punto bastante interesante es que el atributo HandleError se puede aplicar a nivel de acción y de controlador.

Espero les sea interesante el post, les dejo el código para que lo descargue, saludos!

Descarga el ejemplo!