在会话超时后尝试退出

时间:2013-12-20 20:48:24

标签: c# asp.net

我正在处理的网站在会话闲置20分钟后休息。它没有正确处理会话cookie并按原样返回到登录页面。

protected void lnkSignOut_Click(object sender, EventArgs e)
{
    if (HttpContext.Current != null && HttpContext.Current.Session != null)
    {
        HttpContext.Current.Session.Abandon();
    }

    // HttpContext.Current.Session.Abandon(); Added this an attempted fix
    FormsAuthentication.SignOut();
    FormsAuthentication.RedirectToLoginPage();
}

我是ASP.NET的新手,所以我不熟悉会话的处理方式。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您需要在网络配置中设置类似的内容:

<configuration>
  <system.web>
    <authentication mode="Forms">
       <forms 
          name="WhateverYourAuthNameIs" 
          loginUrl="login.aspx" 
          defaultUrl="default.aspx" 
          protection="All" 
          timeout="20"  
          cookieless="AutoDetect"
        </forms>
      </authentication>
   </system.web>
</configuration>

在此处详细了解:http://msdn.microsoft.com/en-us/library/1d3t3c61(v=vs.85).aspx