2013-12-20 9 views
0

Веб-сайт Я работаю с перерывами после сеанса бездействия в течение 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, поэтому я не знаком с тем, как обрабатываются сеансы. Есть идеи?

+0

Что проблема именно? Выключает ли он вас после 20 минут бездействия? – Ani

+0

Это время сеанса, но если вы нажмете кнопку выхода, а не отправите вас на страницу входа в систему, это приведет к сбою веб-сайта. – user1729696

+0

Имеет ли время ожидания сеанса в web.config? Ты проверил ? – Ani

ответ

1

Вам нужно установить что-то вроде этого в WebConfig:

<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

Смежные вопросы