Global.asax 파일의 Application_Error 부분에 다음과 같은 형식으로 처리해 주면 됩니다.
protected void Application_Error(Object sender, EventArgs e)
  {

         Exception objErr = Server.GetLastError();
string err = "<b>Error Caught in Application_Error event</b><hr><br>" +
             "<br><b>Error in: </b>" + Request.Url.ToString() +
             "<br><b>Error Message: </b>" + objErr.Message.ToString()+
             "<br><b>Stack Trace:</b><br>" +
             Server.GetLastError().ToString();
//이벤트로그에 기록
            EventLog.WriteEntry("Project.AppEvent.aspx",err,EventLogEntryType.Error);
//해당 페이지에 오류내용 출력
            Response.Write(err);
            Server.ClearError();
  }

위와 같이 처리시, 해당 오류가 발생한 페이지에 오류내용을 출력하며, 이벤트로그에 해당내용을 기록하게 됩니다.
위 err 내용은 디자인은 해당 웹페이지에 맞게 변경하면 됩니다.
오류발생시 특정 디자인된 페이지로 이동하게 할려면 Web.config 에 다음을 추가하면 됩니다.
<customErrors defaultRedirect="http://hostName/applicationName/errorStatus.htm" mode="On">
</customErrors>
각 오류코드 마다 다른 페이지로 이동하게 할경우는 다음과 같게 하면 됩니다.
<customErrors defaultRedirect="http://hostName/applicationName/errorStatus.htm" mode="On">
<error statusCode="404" redirect="filenotfound.htm" />
</customErrors>

+ Recent posts