jueves, 1 de noviembre de 2012

Manejo de errores personalizados MVC 3

Guia rapida para manejo de errores personalizados en MVC 3.


Paso 1.) Global Filters

Asegurase que en su archivo Global.asax tiene lo siguiente.

 public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            filters.Add(new HandleErrorAttribute());
            
        }

Paso 2.) Error Views


Abra su archivo Error.cshtm que debe estar en View/Shared 
Agregaremos este código despliega  información mas detallada.


@model System.Web.Mvc.HandleErrorInfo

@{
    ViewBag.Title = "Error";
}

<h2>
     Opps: Un error ha ocurrido.
</h2>
<p>Controller = @Model.ControllerName</p>
<p>Action = @Model.ActionName</p>
<p>Message = @Model.Exception.Message</p>
<p>StackTrace :</p>
<pre>@Model.Exception.StackTrace</pre>


Paso 3.) Abra su web config y agregue el siguiente codigo .




<system.web>
  <customErrors mode="On" defaultRedirect="~/error">
    <error statusCode="404" redirect="~/error/notfound"></error>
  </customErrors&gt

Pruebas.

Abra su controlador home, busque la acción "About' y agregue el siguiente código, el cual forzara un error:


   public ActionResult About()
        {
            throw new Exception("This is not good. Something bad happened.");
            return View();
        }





No hay comentarios.: