相关疑难解决方法(0)

如何使自定义错误页在ASP.NET MVC 4中工作

我想要显示500,404和403的自定义错误页面.这是我所做的:

  1. 在web.config中启用了自定义错误,如下所示:

    <customErrors mode="On" 
                  defaultRedirect="~/Views/Shared/Error.cshtml">
    
        <error statusCode="403" 
               redirect="~/Views/Shared/UnauthorizedAccess.cshtml" />
    
        <error statusCode="404" 
               redirect="~/Views/Shared/FileNotFound.cshtml" />
    
    </customErrors>
    
    Run Code Online (Sandbox Code Playgroud)
  2. HandleErrorAttributeFilterConfig类中注册为全局动作过滤器,如下所示:

    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new CustomHandleErrorAttribute());
        filters.Add(new AuthorizeAttribute());
    }
    
    Run Code Online (Sandbox Code Playgroud)
  3. 为上述每条消息创建了自定义错误页面.500的默认值已经开箱即用.

  4. 在每个自定义错误页面视图中声明该页面的模型 System.Web.Mvc.HandleErrorInfo

对于500,它显示自定义错误页面.对于其他人,它没有.

有什么我想念的吗?

看起来这并不是显示自定义错误的全部内容,因为我OnExceptionHandleErrorAttribute类的方法中读取代码并且它只处理500.

我该怎么做才能处理其他错误?

asp.net asp.net-mvc asp.net-mvc-4

242
推荐指数
6
解决办法
25万
查看次数

标签 统计

asp.net ×1

asp.net-mvc ×1

asp.net-mvc-4 ×1