Переменные сеанса в asp.net - PullRequest
       3

Переменные сеанса в asp.net

3 голосов
/ 02 сентября 2011

У меня есть веб-приложение asp.net, использующее переменные сеанса.Я очищаю значения сеанса, когда session_end запускается, но когда приложение открывается в новом окне после закрытия предыдущего окна, значения сеанса сохраняются.

есть способ, которым мы можем избавиться от значений сеанса.

Заранее спасибо ... Phani

Ответы [ 2 ]

0 голосов
/ 02 сентября 2011

Сессия не заканчивается при простом закрытии окна. Сессия заканчивается, когда она истекает. ASP.NET не может знать, закрывает ли пользователь окно. См. MSDN в SessionStateModule.End Event

См. этот ответ для более подробного объяснения.

В верхней части моей головы вы могли бы обнаружить, когда пользователь закрывает окно, например. используя событие unload () в jQuery, и отправьте запрос веб-службе, которая затем завершит сеанс.

0 голосов
/ 02 сентября 2011

Новые окна / вкладки не создают новые сеансы, новые экземпляры браузера делают.

Кроме того, когда сеанс заканчивается, переменные сеанса исчезают.Вы просто не можете контролировать, когда GC удаляет их из памяти, однако они больше не доступны.

...