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 控制器的实例执行错误操作,以在浏览器中显示自定义错误页。

相关内容

热门资讯

外挂手筋!拱趴大菠萝怎么开挂,... 外挂手筋!拱趴大菠萝怎么开挂,红龙poker辅助平台-原来存在有辅助app(哔哩哔哩);小薇(辅助器...
外挂手段!哈糖大菠萝有挂吗,w... 外挂手段!哈糖大菠萝有挂吗,werplan外开挂-原来真的有辅助插件(哔哩哔哩)哈糖大菠萝有挂吗能透...
外挂课程!werplan怎么透... 外挂课程!werplan怎么透视,werplan外卦神器-原来有辅助脚本(哔哩哔哩)werplan怎...
外挂模板!拱趴大菠萝万能辅助器... 外挂模板!拱趴大菠萝万能辅助器,pokerrrr2辅助-都是真的是有辅助app(哔哩哔哩)1、下载好...
外挂策略!德普辅助软件,德州私... 外挂策略!德普辅助软件,德州私人局脚本-竟然存在有辅助神器(哔哩哔哩)1、德州私人局脚本有没有辅助教...
外挂诀窍!werplan怎么作... 外挂诀窍!werplan怎么作必弊,pokermaster破解版-原来存在有辅助技巧(哔哩哔哩)1、...
外挂资料!德扑圈有透视吗,德普... 您好,这款游戏可以开挂的,确实是有挂的,需要了解加去威信【485275054】很多玩家在这款游戏中打...
外挂绝活!德普之星透视辅助插件... 外挂绝活!德普之星透视辅助插件,xpoker辅助怎么用-一直是有辅助脚本(哔哩哔哩)1、玩家可以在x...
外挂方案!德州透视是真的假的,... 外挂方案!德州透视是真的假的,智星菠萝有挂吗-其实一直总是有辅助app(哔哩哔哩)1、起透看视 德州...
外挂策略!sohoo poke... 外挂策略!sohoo poker辅助器,德州局透视脚本免费版下载手机版-总是真的有辅助脚本(哔哩哔哩...