¿cómo puedo arrojar una excepción/resultado 404 de FileNotFound de mi acción y dejar que IIS use la sección de configuración de customErrors para mostrar la página 404?lanzando/devolviendo un resultado de acción 404 o una excepción en Asp.net MVC y dejando que IIS lo maneje
he definido mis customErrors al igual que
<customErrors mode="On" defaultRedirect="/trouble">
<error statusCode="404" redirect="/notfound" />
</customErrors>
Mi primer intento de una ActionResult que trata de añadir este no funciona.
public class NotFoundResult : ActionResult {
public NotFoundResult() {
}
public override void ExecuteResult(ControllerContext context) {
context.HttpContext.Response.TrySkipIisCustomErrors = false;
context.HttpContext.Response.StatusCode = 404;
}
}
Pero esto sólo muestra una página en blanco y no mi/no encontrado páginas
:(
¿Qué debo hacer?
Had para degradar esto porque uno no debería estar haciendo esto a mano. Use el método del controlador HttpNotFound como se muestra en otra respuesta. – xanadont
Es cierto, pero HttpNotFound se introdujo en ASP.NET MVC 3. Esta pregunta (y mi respuesta) es anterior a esa y fue un enfoque apropiado en versiones anteriores. Ahora edité mi respuesta para ilustrar el enfoque más nuevo que se prefiere en MVC3. –
Rad. Votaste tu copia de seguridad. – xanadont