1

エラーが発生するたびにリダイレクトするエラーページを実行しようとしています。

これは私のコードです:

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

これは正常に機能しています。エラーページでもエラーメッセージを取得するにはどうすればよいですか。

例:エラー-インデックスエラー

4

2 に答える 2

1

(プログラムで)発生した最後のエラーを取得し、それをページに表示する必要があります。あなたはこのようにそれをすることができます(Error.aspxで):

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

lblErrorエラーメッセージを表示するためだけに、ページで定義されているラベルコントロールはどこにありますか。

詳細については、こちらをご覧ください。

于 2013-01-11T16:16:03.747 に答える
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カスタムエラーページについてもっと読む

于 2013-01-11T16:20:39.343 に答える