如果会话在asp.net中“20”分钟后退出,我该怎么办?

时间:2012-05-11 08:31:53

标签: c# asp.net visual-studio-2010

我已经为我的项目研究并实现了一些代码,但仍然在20分钟后,我的会话退出并返回到我的登录页面。无论我在httpruntimesessionstateglobal.asax中添加超时多长时间,或者在IIS应用程序池中增加Idle Timeout,它似乎都不起作用。

的web.config:

  <authentication mode="Forms">
      <forms name="__authcookie" loginUrl="LoginPage.aspx" timeout="60" protection="All" requireSSL="false" slidingExpiration="true" cookieless="UseDeviceProfile" enableCrossAppRedirects="false"/>
  </authentication>
  <sessionState mode="InProc" timeout="60" customProvider="AppFabricCacheSessionStoreProvider"></sessionState>
<membership>
  <providers>
    <clear />
    <add name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="ApplicationServices" enablePasswordRetrieval="false" enablePasswordReset="true" requiresQuestionAndAnswer="false" requiresUniqueEmail="false" maxInvalidPasswordAttempts="5" minRequiredPasswordLength="6" minRequiredNonalphanumericCharacters="0" passwordAttemptWindow="10" applicationName="/" />
  </providers>
</membership>
<profile>
  <providers>
    <clear />
    <add name="AppFabricCacheSessionStoreProvider" type="Microsoft.ApplicationServer.Caching.DataCacheSessionStoreProvider" cacheName="NamedCache1" sharedId="SharedApp"/>
    <add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
  </providers>
</profile>

global.asax中:

void Session_Start(object sender, EventArgs e)
        {
            // Code that runs when a new session is started
            Session.Timeout = 60;
        }

2 个答案:

答案 0 :(得分:1)

尝试将此添加到您的web.config文件

<system.web>
    <authentication mode="Forms">
          <forms timeout="50"/>
    </authentication>
    <sessionState timeout="60"  />
</system.web>

此外,如果您不希望会话超时,您可能会有兴趣阅读有关Avoid Prevent Session TimeOut In Asp.Net To Keep Alive的文章

答案 1 :(得分:0)

可能不是会话超时而是身份验证。使用<authentication>元素(默认情况下为.ASPXAUTH cookie)控制身份验证,该元素与会话(默认情况下为Aspnet_SessionId cookie)不同。

使用timeout元素的<authentication>属性。