asp.netエラー処理Application_Errイベントの例


ASP.NETエラー処理方法Appplication_Errerイベントの例は以下の通りです。
新しいウェブプログラム――AppEvent.aspxページを新規作成する――このページに次のコードを追加します。

<SCRIPT language=C# runat="server">
void Page_Load(object sender, System.EventArgs e)
{
throw(new ArgumentNullException());
}
</SCRIPT>
そして、ApplicationをErrerイベントをGlobal.asaxファイルに追加して、ApEvent.aspxページのPage_をキャプチャします。ロードイベントで発生したエラー。以下のコードをGlobal.asaxファイルに追加します。

protected void Application_Error(object sender, EventArgs e)
{
Exception objErr = Server.GetLastError().GetBaseException(); // keleyi.com
string err ="Error Caught in Application_Error event/n" +
"Error in:" + Request.Url.ToString() +
"/nError Message:"+ objErr.Message.ToString() +
"/nStack Trace:"+ objErr.StackTrace.ToString();
// windows , 。
System.Diagnostics.EventLog.WriteEntry("Test2", err, System.Diagnostics.EventLogEntryType.Error);
Server.ClearError(); // , 。
}
先ほどの操作を保存し、Visual Studio.NETで作成メニューをクリックして生成します。このページを右クリックし、ブラウザをクリックして表示します。この場合はページが空白になりますが、イベントログに新しい項目が追加されていることに注意してください。この例は、アプリケーションログで一つの項目を生成し、イベントビューアからアプリケーションログにアクセスすることができます。エラーを記録した後、ユーザーを他のユーザーにやさしいエラーページにリダイレクトしたいかもしれません。あるいは必要に応じていくつかの他の操作を実行します。これらの操作は自分の必要に応じて行うことができます。