【问题标题】:Custom Error Page in asp.net mvc 3asp.net mvc 3中的自定义错误页面
【发布时间】:2011-08-13 23:57:58
【问题描述】:

我有一个带有 razor 引擎的新 asp.net mvc 3 网站,我正在努力让该网站准备好投入生产,但我无法出现黄屏死机。在 webforms 中这很简单,只需在 web.config 中打开 customErrors 即可。

为了测试,我设置了一个测试控制器方法:

    public ActionResult Ex()
    {
        throw new InvalidOperationException();
    }

我希望显示错误视图 (/Views/Shared/Error.cshtml),而不是显示黄屏死机,并显示消息“由于对象的当前状态,操作无效”。我尝试在 web.config 中打开 customErrors,但它仍然无法正常工作。我在 Global.asax 中调用 RegisterGlobalFilters 方法,但也尝试直接应用 HandleError 属性。

感谢您的帮助。

【问题讨论】:

  • 您看到的消息是在 CustomErrors 开启的情况下出现的 - 在 CustomErrors 关闭的情况下发生了什么?

标签: asp.net-mvc-3


【解决方案1】:

打开自定义错误并将它们路由到错误控制器。

<customErrors mode="On" defaultRedirect="~/Error/Unknown">
  <error statusCode="403" redirect="~/Error/NoAccess" />
  <error statusCode="404" redirect="~/Error/NotFound" />
</customErrors>

控制器需要动作 Unknown、NoAccess 和 NotFound。每个都需要返回一个视图。

【讨论】:

    猜你喜欢
    • 2018-12-03
    • 2014-06-27
    • 1970-01-01
    • 2015-11-14
    • 1970-01-01
    • 2011-10-07
    • 1970-01-01
    • 1970-01-01
    • 2011-09-24
    相关资源
    最近更新 更多