установить длительный тайм-аут для выбранной переменной сеанса

net 2.0, и я хочу, чтобы время ожидания переменной сеанса администратора составляло 1 час.

Является ли это возможным? и как?

Я использую проверку подлинности Windows.


person Vikas    schedule 18.04.2009    source источник


Ответы (1)


Вы можете установить тайм-аут сеанса глобально в web.config:

<configuration>
  <system.web>
    <sessionState 
      mode="InProc"
      cookieless="true"
      timeout="30" />
  </system.web>
</configuration>

И вы можете программно переопределить этот параметр в своем коде (например, только для сеанса администратора), установив Session.Timeout, например:

// set the current session's timeout to 60 minutes
// if the current user is an admin
if (currentUserIsAdmin)
    Session.Timeout = 60; 

Взгляните на эту страницу MSDN для подробностей.

person M4N    schedule 18.04.2009
comment
Мартин, если я программно изменю вышеуказанное условие, повлияет ли это глобально? Например, если сеанс администратора создан, то все остальные сеансы будут иметь тайм-аут 60 минут! в противном случае 30 мин. - person Vikas; 18.04.2009
comment
Нет, если вы устанавливаете таймаут программно, вы делаете это только для одной сессии (текущей сессии). - person M4N; 18.04.2009