ошибка сеанса истекла в asp.net MVC 3 - PullRequest
1 голос
/ 02 ноября 2011

Я работаю над приложением asp.net MVC 3.Я столкнулся с проблемой, связанной с истечением срока действия сессии.Когда я вошел в систему и веб-сайт неактивен в течение 10-15 минут, я пытаюсь щелкнуть любую ссылку, в которой говорится, что ссылка на объект недействительна.Я хочу, чтобы по окончании сеанса при нажатии на любую ссылку меня перенаправили на страницу входа с сообщением об ошибке истечения сеанса или всплывающее окно с тем же сообщением.как это реализовать в asp.net MVC 3.

С уважением, Асиф Хамид

Ответы [ 2 ]

2 голосов
/ 02 ноября 2011

Я предполагаю, что ваш код извлекает что-то из состояния сеанса, а затем использует его, не проверяя, является ли он нулевым.

Я бы посоветовал взглянуть на этот код и добавить нулевую проверку. если ноль, то перенаправить на страницу входа, как вам нужно.

1 голос
/ 02 ноября 2011

В веб-приложении .net обычно наблюдаются два таймаута.

Первый - это тайм-аут сеанса.Он устанавливается в теге sessionState.

<sessionState timeout="number of minutes" ...></sessionState>

Второй - это тайм-аут cookie форм.Он установлен в теге аутентификации.

<authentication mode="Forms">
      <forms timeout="number of minutes"/>
</authentication>

Похоже, что ваш сеанс истекает до истечения времени ожидания файлов cookie форм.

Лучше, чтобы ваш сеанс длился на несколько минут дольшечем файл cookie проверки подлинности форм, таким образом, пользователь может войти в систему в течение нескольких минут и продолжить сеанс.У меня были проблемы, такие как описанная вами, с установкой их на то же значение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...