2013-02-07 4 views
3

우리는 MVC asp.net 응용 프로그램에 ELMAH을 사용하고 있습니다.
어떤 exceptionELMAH 발생 내 Global.asax에
내부 및 HttpContext.Current.Items 변수 만 null exception을 얻기에서 값을 읽으려고 이벤트 ErrorMail_Mailing,
나는이 이벤트에 대한 핸들러를 쓰고있다 오류 메일을 보냅니다.

해결 방법 주위를 해결해주세요.ELMAH의 ErrorMail_Mailing 처리기 (Global.asax에서)에서 HttpContext.Current가 null을 반환합니다.

스캇 여기에 제안되는 것을 신청하는 : - 나는 내 HttpContext.Current.Items

내부에 저장된 뭔가 오류 메일의 제목 줄을 구성 할 이벤트 핸들러, 아래에 쓰기를 시도하고 global.asax.cs에서 http://scottonwriting.net/sowblog/archive/2011/01/06/customizing-elmah-s-error-emails.aspx
protected void ErrorMail_Mailing(object sender, Elmah.ErrorMailEventArgs e) 
     {    
      if (HttpContext.Current.Items["CustomerName"] != null) 
      { 
       e.Mail.Subject = "Error came to/" + HttpContext.Current.Items["CustomerName"] + "/Error Type: " + 
           e.Error.Type; 
      } 
     } 
+0

에 오신 것을 환영합니다. :) 당신은 Gloabal.asax 안에 처리기를 작성하려고합니다. 몇 가지 코드를 입력하십시오. –

+0

아래 블로그에서 언급 한 것과 똑같은 것을 달성하려고합니다. - http://scottonwriting.net/sowblog/archive/2011/01/06/customizing-elmah-s-error-emails.aspx?CommentPosted=true#commentmessage 고마워, 내 질문도 업데이 트됩니다. –

답변

0

MVC 내에서 사용자가 HttpContext.Current.Items 값을 ErrorEmailEvent에서 사용할 수 있는지 여부에 따라 달라집니다. 이전의 SO 질문 - HttpContext.Items with ASP.NET MVC을 올바르게 설정하거나 creating your own ITempDataProvider과 같은 대체 수단을 사용하는 것에 대한 지침을 참조하십시오.