Estoy ejecutando mi aplicación MVC 3 (recientemente actualizada desde 2) en IIS 7.5 (Win 7 64bit) con un grupo de aplicaciones de canalización integrado .NET 4.0 y la siguiente configuración en web.config:IIS 7.5 sin tener en cuenta los customErrors para 404 devueltos por la aplicación MVC 3
<customErrors mode="On" defaultRedirect="~/Problem/Oops" redirectMode="ResponseRedirect">
<error statusCode="404" redirect="~/Problem/NotFound" />
</customErrors>
Si un método de acción en un controlador emite una excepción el servidor y por lo tanto genera un código de error 500 que envía correctamente el navegador a la URL de redireccionamiento por defecto.
Sin embargo, si mi acción devuelve deliberadamente un HttpNotFoundResult a través de HttpNotFound() obtengo la página de error IIS 7.5 404.0 y no la indicada en mi web.config.
Si ingreso una URL que no existe en mi aplicación como http://localhost/MyApp/FOO, entonces se me muestra la página como lo indica el web.config.
¿Alguien tiene alguna idea de por qué no me redirigen a mi página personalizada de error 404 cuando uso HttpNotFound()?
Puedo confirmar que esto funcionó para mí. – Thomas