できません。これは内部関数呼び出しの一部であり、変更できません。これは、リダイレクトを作成する関数でありthis.Request.Path
、パラメーターを含む完全な URL ではありません。
internal bool RedirectToErrorPage(string url, CustomErrorsRedirectMode redirectMode)
{
try
{
if (string.IsNullOrEmpty(url))
{
return false;
}
if (this._headersWritten)
{
return false;
}
if (this.Request.QueryString["aspxerrorpath"] != null)
{
return false;
}
if (redirectMode == CustomErrorsRedirectMode.ResponseRewrite)
{
this.Context.Server.Execute(url);
}
else
{
if (url.IndexOf('?') < 0)
{
url = url + "?aspxerrorpath=" + HttpEncoderUtility.UrlEncodeSpaces(this.Request.Path);
}
this.Redirect(url, false);
}
}
catch
{
return false;
}
return true;
}
もう少し言うと。
そのエラー ページに到達すると、コントロールを失ったことになります。つまり、プログラミング エラー、または未処理の例外があることを意味します。そのエラーは EventViewer に記録されますがApplication_Error
、global.asax を使用して個人的にログを記録し、ログ ファイルに書き込むこともできます。
相対:
asp.netアプリケーションで未処理の例外をキャッチする方法は?
ASP.NET アプリケーションで "一般的なエラー" ページを作成して、そのページ自体を提供するときにトリガーされたエラーを処理するにはどうすればよいですか?