ASP.NETアプリケーションがあり、Global.asaxのアプリケーションエラーイベントで、エラーをトレース/ログに記録するメソッドを呼び出しています。ここでセッション変数のコンテンツを使用したいと思います。以下のコードを使用しました
void Application_Error(object sender, EventArgs e)
{
//get reference to the source of the exception chain
Exception ex = Server.GetLastError().GetBaseException();
//log the details of the exception and page state to the
//Windows 2000 Event Log
GUI.MailClass objMail = new GUI.MailClass();
string strError = "MESSAGE: " + ex.Message + "<br><br><br>" + "SOURCE: " + ex.Source + "<br>FORM: " + Request.Form.ToString() + "<br>QUERYSTRING: " + Request.QueryString.ToString() + "<br>TARGETSITE: " + ex.TargetSite + "<br>STACKTRACE: " + ex.StackTrace;
if (System.Web.HttpContext.Current.Session["trCustomerEmail"] != null)
{
strError = "Customer Email : " + Session["trCustomerEmail"].ToString() +"<br />"+ strError;
}
//Call a method to send the error details as an Email
objMail.sendMail("test@gmail.com", "myid@gmail.com", "Error in " + Request.Form.ToString(), strError, 2);
}
セッション変数にアクセスしているコード行でエラーが発生します。VisualStudioはそれを伝えています
このコンテキストではセッションは利用できません
どうすればこれを取り除くことができますか?