2008-08-21 22 views

Respuesta

6

Eche un vistazo a this page para enrutar los errores 404 a una página especificada.

+2

Es posible que desee actualizar la respuesta de incluir los detalles pertinentes en el mismo. – jgauffin

16

sólo tiene que utilizar una ruta:

// We couldn't find a route to handle the request. Show the 404 page. 
routes.MapRoute("Error", "{*url}", 
    new { controller = "Error", action = "404" } 
); 

Dado que este será un controlador global, puesto que todo el camino en la parte inferior en virtud de la ruta por defecto.

+6

¿Es esto correcto? Porque seguro si defino una ruta para {controller}/{action}/{id} digamos, y el usuario ingresa la url con un controlador que no existe, entonces se mostrará en pantalla amarilla, ya que esa primera ruta coincidirá y su atrapar todo nunca se alcanzará? – jmcd

+0

Acabo de probar esto, y sigo obteniendo la pantalla amarilla predeterminada 404. –

+1

Esto funciona, pero significa que tienes que tener rutas manuales para todos tus controladores, es decir, no '{controller}/{action}/{id } 'en su lugar, tendría que hacer' Home/{acción}/{id} ',' Cuenta/{acción}/{id} ', etc. –

Cuestiones relacionadas