asp中的自定义错误

时间:2013-01-11 16:07:42

标签: c# asp.net custom-error-pages custom-errors

我正在尝试执行错误页面,只要发生错误,该页面就会重定向到该页面。

这是我的代码:

              <customErrors defaultRedirect="Error.aspx" mode="On" />

现在工作正常如何在错误页面

上也能得到错误消息

示例:错误 - 索引错误

2 个答案:

答案 0 :(得分:1)

您需要获取发生的最后一个错误(以编程方式)并在页面中显示它。你可以这样做(在Error.aspx中):

protected void Page_Load(object sender, EventArgs e)
{
     Exception ex = Server.GetLastError();
     lblError.Text= ex.Message;
     Server.ClearError();
}

其中lblError是页面中定义的Label控件,仅用于显示错误消息。

有关详细信息,请参阅here

答案 1 :(得分:1)

protected override void OnError(EventArgs e)
{     
  HttpContext ctx = HttpContext.Current;

  Exception exception = ctx.Server.GetLastError ();

  string errorInfo = 
     "<br>Offending URL: " + ctx.Request.Url.ToString () +
     "<br>Source: " + exception.Source + 
     "<br>Message: " + exception.Message +
     "<br>Stack trace: " + exception.StackTrace;

  ctx.Response.Write (errorInfo);
  ctx.Server.ClearError ();

  base.OnError (e);
}

详细了解ASP.NET Custom Error Pages