문제

이것은 이상한 것이지만, 누군가가 나에게 아이디어를 줄 수 있기를 바랍니다. 나는 몇 가지 값을 세션에 넣고있다 Session_StartGlobal.asax 내 앱에서. 즉시 Session_Start 내 기본 페이지 OnInit 전화를 받고 그 중 하나를 사용하려고합니다 Session 변수.

이상한 부분은 때때로 작동하는데, 변경되지 않으면이 오류를주기 시작합니다.

"세션 상태는 다음에만 사용할 수 있습니다 enableSessionState 설정되었습니다 true, 구성 파일 또는 Page 지령. 또한 확인하십시오 System.Web.SessionStateModule 또는 사용자 정의 세션 상태 모듈이 <configuration>\<system.web>\<httpModules>응용 프로그램 구성 섹션. "

나는 web.config. 지금은 다음과 같습니다.

<system.web>
...
    <sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"/>

    <globalization requestEncoding="utf-8" responseEncoding="utf-8"/>
    <httpHandlers>
        <add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax"/>
        <remove verb="*" path="*.asmx"/>
        <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add verb="*" path="*_AppService.axd" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        <add verb="GET,HEAD" path="ScriptResource.axd" validate="false" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    </httpHandlers>
    <xhtmlConformance mode="Legacy"/>
    <pages>
    <!-- enableSessionState="true" autoEventWireup="true" enableViewState="true" enableViewStateMac="true" -->
        <controls>
            <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
            <add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
        </controls>
    </pages>
    <httpModules>
        <!--<add name="Session" type="System.Web.SessionState.SessionStateModule"/>-->
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    </httpModules>
</system.web>

당신은 내가 몇 가지 물건을 가지고있는 것을 볼 수 있습니다. enableSessionState="true" 그리고 <add name="Session" type="System.Web.SessionState.SessionStateModule"/> 그들은 전에는 결코 거기에 없었고 항상 일하는 데 익숙했기 때문입니다. 그러나 나는 그들과 함께 그것을 사용하여 그것을 시도했다.

이것은 수년간 제작 된 앱이며, 나는 사소한 변경을하고 있습니다. 아마도 가장 큰 것은 아마도 "Titlebar"페이지를 추가하고 2.0에서 3.5로 업그레이드하는 것입니다. 나는 추가하려고 시도하지 않았다 enableSessionState 페이지 지시서에 작동하지 않기 때문에 web.config 나는 그것이 왜 페이지에서 직접 작동하는지 알지 못하고 더 이상 앱을 더럽 히거나 더 이상 헛된 시간을 헛되이 헛되이 낭비하는 것을 싫어합니다.

다른 아이디어가 있습니까?

감사합니다, 제프

도움이 되었습니까?

해결책

브레이크 포인트!

기본 페이지의 생성자 메소드와 메인 페이지 및 Session_Start 및 OnInit의 중단 점을 설정했습니다. 동료가 디버거의 모든 중단 점을 삭제했으며 문제는 해체되었습니다!

u!

다른 팁

가변 인스턴스화에서 중단 점으로 동일한 것을 경험하고 일부 세션 값을 설정합니다. Windows 7 / VS2010 실행. 브레이크 포인트를 비활성화하면 세션 상태를로드 할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top