모든 예외를 추적하고 필요한 정보를 데이터베이스에 기록하고 오류에 대해 알아야하는 개발자에게 이메일을 보내려는 오류 처리 기능이 있습니다. 그것을 고쳐라. 내가 만나는 문제는 페이지가 완전히로드되기 전에 오류가 발생할 때입니다. 이 경우 추적 할 세션 변수는 Application_Error에서 사용할 수 없습니다. 그래서 나는 오류 처리에 오류가 없도록 다음을 수행하지만 더 좋은 방법이 있어야합니다. 또한 페이지가로드되고 양식 제출시 오류가 발생하면 세션 변수를 사용할 수 있습니다.ASP.NET C# Global_asax의 Application_Error가 세션 변수에 액세스 할 수 없음
try
{
user_name = System.Web.HttpContext.Current.Session["User_Name"].ToString();
user_number = System.Convert.ToInt32(System.Web.HttpContext.Current.Session["User_Number"].ToString());
}
catch (Exception ex)
{
user_number = 0;
user_name = "N/A";
}
모든 도움을 주시면 감사하겠습니다. 감사합니다.
안녕하세요, 답변을 보내 주셔서 감사합니다. 현재 우리의 오류 로깅은 페이지 단위로 오류를 잡아 내고 사용자에게 알려주지 만 (바보 같은 생각입니다) 추적이 있으면 추적 정보에 세션 정보가 표시됩니다. 해당 정보를 application_error 이벤트로 가져 오는 방법이 있어야합니까? –
다시 페이지를 사용할 수있게되기 전에 페이지 수명주기의 포인트를 포함하여 언제든지 오류가 발생할 수 있습니다. 세션을 null로 설정할 수있는 규칙은 없습니다. 따라서이 검사를 수행하는 것이 현명하고 신중해야합니다. – harpo