1

这个问题似乎遍布stackoverflow,但我似乎找不到正确的答案。

我使用 MVC3 设置 ELMAH,ELMAH 正在记录错误。但是,客户端没有被重定向到我的自定义错误页面。此外,如果您使用的是 firefox/chrome,您将被重定向到 ~/views/shared/error.cshtml 下的默认错误视图,如果您使用的是 IE,您将获得一个通用的 HTTP 500“页面不能显示”。

我可以成功导航到我设置的自定义错误页面:~/home/trouble,它在 web.config 中指定...为什么没有被使用?为什么在 FF 和 chrome 的情况下 IE 不会显示默认错误页面?

我是 MVC 的新手……请帮忙,我在这上面花了太多时间。

我的 web.config:

  <system.web>
      <customErrors mode="On" defaultRedirect="~/Home/Trouble" />
  ......

我的 Global.asax:

  public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            // commented this out, cause everything says to for ELMAH
            //filters.Add(new HandleErrorAttribute());
        }

        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute(""); 
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            // Home and error page
            routes.MapRoute("trouble", "Home/Trouble", new { controller = "Home", action = "Trouble" });
            routes.MapRoute("home", "Home/Index", new { controller = "Home", action = "Index" });
4

0 回答 0