异常后显示错误页面
今天将一下 ,如何在web site发生异常后,我们统一跳转到 一个友好的错误页面。
在了解这个问题前,我们先思考一下。
关于为何需要这样的功能,我就不细说了。
那我们要考虑的是,统一跳转~,对滴,统一跳转。
1 创建一个Global.asax页面
vs里会有的,自己找找
然后,你可以了解一下,这个文件是干嘛用的。
这里我就贴一个链接吧。
这个比较详细(里面还包含了当中的事件介绍):http://m.blog.csdn.net/blog/XuWei_XuWei/21391671
然后就很简单了。
我们需要了解,程序但凡出现异常,最终都会跑到我们的Global.asax.cs的Application_Error事件中。
因此我们在Global.asax.cs这么写
public class MvcApplication : System.Web.HttpApplication
{
void Application_Error(object sender, EventArgs e)
{
//捕获页面传递来的异常
Exception ex = Server.GetLastError().GetBaseException();
//Log 日志,这个么,基本都会记录一下
LogHelper.WriteLog("\r\n" + "StackTrace:\r\n" + ex.StackTrace + "\r\n\r\n" + "Message:\r\n" + ex.Message + "\r\n\r\n\r\n\r\n");
Server.ClearError();
//跳转到 错误页面
Response.Redirect("~/ShopServer/ErrorPage");
}
}
当然,还有一种是 在 web.config中配置错误页面。那个比较高大上,通过不同的错误code,跳转到不同的错误页面。
有兴趣的朋友可以网上查查,这里就不赘述了。哈哈