/// <summary>
/// 全局异常处理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Application_Error(object sender, EventArgs e)
{
//获取到HttpUnhandledException异常,这个异常包含一个实际出现的异常
Exception ex = Server.GetLastError();
//实际发生的异常
Exception iex = ex.InnerException;
string errorMsg = String.Empty;
string particular = String.Empty;
if (iex != null)
{
errorMsg = iex.Message;
particular = iex.StackTrace;
}
else
{
errorMsg = ex.Message;
particular = ex.StackTrace;
}
//HttpContext.Current.Response.Write("来自Global的错误处理<br />");
//HttpContext.Current.Response.Write(errorMsg);
//写日志
string filePath = string.Format("~/Log/Error/{0}/", new object[] { DateTime.Now.ToString("yyyy-MM") });
LogManager.SaveLog(Server.MapPath(filePath), errorMsg);
Server.ClearError();//处理完及时清理异常
int stateCode=(ex is HttpException) ? (ex as HttpException).GetHttpCode() : 500;
switch (stateCode)
{
case 404:
Response.Redirect("/NotFound.html");
break;
default:
Response.Redirect("/Error.html");
break;
}
}
asp.net mvc全局异常处理
最新推荐文章于 2024-07-21 08:00:00 发布