2012-07-16 2 views
0

은 내가세션 쿠키와 asp.net

<sessionState mode="InProc" 
       stateConnectionString="tcpip=127.0.0.1:42424" 
       stateNetworkTimeout="10" 
       sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI" 
       sqlCommandTimeout="30" customProvider="" cookieless="UseCookies" 
       cookieName="ASP.NET_SessionId" 
       timeout="120" 
       allowCustomSqlDatabase="false" 
       regenerateExpiredSessionId="true" 
       partitionResolverType="" 
       useHostingIdentity="true"> 
    <providers> 
    <clear/> 
    </providers> 
</sessionState> 

<authentication mode="Forms"> 
    <forms loginUrl="~/login.aspx" 
     defaultUrl="Default.aspx" 
     cookieless="UseCookies"/> 
</authentication> 

하지만 때로는 세션 동작이 이상한

사용자가 얻을 서 Web.config의 이러한 설정을 사용 http://my.appl.com/S(DGsdgfg453dsgfsdgsdgsd)/mypage.html 여기서 S(DGsdgfg453dsgfsdgsdgsd)은 한 사용자의 세션 키이지만 모든 사용자를 확보합니다. 예 : UseCookies = false.

다시 시작하면 응용 프로그램을 다시 시작하고 시간이 오래 걸립니다. 그럼 다시.

내 응용 프로그램에는 어떤 문제가 있습니까?

+0

노드의 "cookieless"값은 'UseCookies'가 아니라 'true'또는 'false'입니다. –

+0

뿐만 아니라 http://msdn.microsoft.com/en-us/library/h6bb9cz9.aspx –

+0

와 나는 좋은 결과없이 "거짓"을 사용했다. –

답변

0

이유는 메모리가 가득 찼다는 것입니다. 나는 세션에서 커다란 직렬화 된 객체를 유지했다.

내가 Global.asax.cs
protected void Session_End(object sender, EventArgs e) 
{ 
Session.Clear(); //? 
Session.Abandon(); 
} 

에 추가하고 문제가 사라졌다.