1

我正在尝试使用两种方法自定义 MVC4 应用程序中的错误页面:

1.我已经涵盖了以下情况Application_Error

RouteData routeData = new RouteData();
routeData.Values.Add("code", errorCode); //this code is from generated exception
routeData.Values.Add("action", "Index");
routeData.Values.Add("controller", "Error");            

IController errorController = new ErrorController();
errorController.Execute(new RequestContext(new HttpContextWrapper(Context), routeData));

2.将“Catch All”路由添加到我的路由表中:

RouteHelper.MapRoute(
   "CatchAll",
   "{*catchAll}",
   defaults: new { controller = "Error", action = "Index", code = "404" }
);

但是,当我像这样输入 URL 时仍然遇到黄屏死机(注意最后的字符):

localhost/Home/Index.

运行时错误

描述:处理您的请求时发生异常。此外,在执行第一个异常的自定义错误页面时发生了另一个异常。请求已终止。

我认为任何 YSOD 都应该触发Application_Error,但事实并非如此。我错过了什么?

4

0 回答 0