2009-10-04 5 views
2

asp.net의 세션과 관련하여이 문제가 발생했습니다. ASP.Net 웹 응용 프로그램을 만들고 있습니다. System.Web.Ui.Page에서 상속받은 BasePage라는 클래스를 만들었습니다. 이 BasePage 클래스는 ActiveUser 유형의 ActiveUser라는 추가 멤버가있는 System.Web.Ui.Page입니다 (내 클래스를 만들었습니다). BasePage의 생성자에서 이전에 설정된 세션 변수 인 this.ui = (ActiveUser)Session["ActiveUser"]에 ui 구성원을 설정했습니다. 그러나, 내 프로젝트를 실행할 때 this.ui = Session["ActiveUser"]에 BasePage 생성자에서 HttpException을 얻습니다. 그것은 enableSessionState가 config 파일에서 true로 설정되어 있는지 확인하도록 알려주 었는데, 이것이 맞는지 확인했습니다. 누구든지이 문제를 해결하는 방법에 대한 모든 이데스를 가지고 있습니까? 대단히 감사하겠습니다. 고맙습니다.ASP.Net에서 Base 클래스의 Session 변수에 어떻게 액세스 할 수 있습니까?

답변

6

그냥 기본 페이지 생성자에 저장하는 것이 궁금한가요?

대신 생성자에서 세션에 액세스하지 말고 대신 Page_Init을 사용해야합니다. 다음 게시물을 참조 :

http://weblogs.asp.net/anasghanem/archive/2008/05/07/avoid-using-the-session-in-the-page-constructor.aspx

세션 변수는 언제든지 액세스 할 수 있습니다 이유는 모든 세션 데이터를 잡기 위해 기능을 가진 정적 클래스/메소드를 만들 수 없습니다 때문에 페이지 기능을 구현할 때? 기본 데이터베이스에서이 데이터의 저장 영역을 복제하려는 이유가 표시되지 않습니다.

당신이 스레드 체크 아웃 할 수 있습니다 ASP.Net Session

+1

감사가 조언을 많이입니다를. 나는 weblogs.asp.net에서 제안 된 guire를 folloes하고 그것은 마법처럼 일했습니다! –

관련 문제