ASP.NETMVC自定义错误页面,一个页面用于多个错误
创始人
2024-11-12 05:30:03
0

在 ASP.NET MVC 中,我们可以通过设置错误处理程序来自定义错误页面。但是,通常情况下,为了提高用户体验,我们希望能够为多个不同类型的错误配置同一个错误页面。下面是一个示例代码片段,可以实现这个功能:

在 Global.asax.cs 文件中添加以下代码:

protected void Application_Error(object sender, EventArgs e)
{
    Exception exception = Server.GetLastError();
    Response.Clear();
    HttpException httpException = exception as HttpException;
    RouteData routeData = new RouteData();
    routeData.Values.Add("controller", "Error");
    routeData.Values.Add("action", "Index");

    if (httpException != null)
    {
        switch (httpException.GetHttpCode())
        {
            case 404:
                Response.StatusCode = 404;
                routeData.Values["action"] = "NotFound";
                break;
            case 500:
                Response.StatusCode = 500;
                routeData.Values["action"] = "InternalError";
                break;
            default:
                Response.StatusCode = 500;
                routeData.Values["action"] = "InternalError";
                break;
        }

        Server.ClearError();
        Response.TrySkipIisCustomErrors = true;

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

在这段代码中,我们首先获取了最近的异常,并将其转换为 HttpException 实例。接下来,我们根据 HTTP 响应代码设置错误页面控制器的操作名称,以便将用户重定向到正确的视图页面。

最后,我们使用 RequestContext 和 Error 控制器的实例执行错误操作,以在浏览器中显示自定义错误页。

相关内容

热门资讯

透视游戏!aapoker辅助器... 透视游戏!aapoker辅助器怎么用,wepoker辅助器是真的吗,AI教程(最初有挂);致您一封信...
透视科技!德普之星辅助正版,德... 透视科技!德普之星辅助正版,德普之星辅助器怎么用,攻略教程(一直真的有挂);实战中需综合运用上述技巧...
透视安装!德普之星透视辅助软件... 大家肯定在之前德普之星透视辅助软件或者德普之星透视辅助软件中玩过透视安装!德普之星透视辅助软件,德普...
透视黑科技!aapoker透视... 透视黑科技!aapoker透视软件,wpk透视辅助方法,攻略教程(一贯是有挂)准备好在wpk透视辅助...
透视透视!wepoker透视脚... 透视透视!wepoker透视脚本苹果版,wpk辅助器,AA德州教程(固有真的有挂);致您一封信;亲爱...
透视脚本!hhpoker开辅助... 透视脚本!hhpoker开辅助软件,德普辅助器辅助器怎么用,软件教程(素来真的有挂);科技安装教程;...
透视模拟器!aapoker辅助... 透视模拟器!aapoker辅助工具存在吗,拱趴大菠萝作弊方法,必赢教程(切实真的是有挂)1、每一步都...
透视了解!wpk辅助器,来玩a... 1、透视了解!wpk辅助器,来玩app破解版,2025教程(竟然真的有挂)(UU poker、wpk...
透视透视挂!wepoker脚本... 透视透视挂!wepoker脚本,pokemmo脚本手机版,2025新版教程(先前是有挂)1、不需要A...
透视ai代打!wepoker免... 透视ai代打!wepoker免费永久脚本,wepoker怎么破解游戏,科技教程(其实真的是有挂);(...