Это странная проблема, и я не уверен, что происходит. Я использую IIS7 и .net 4.0, чтобы быть.
Казалось, что сессионные куки не могут остаться на клиенте после закрытия браузера. Другое странное, что я могу закрыть IE и открыть FireFox, и сессия тоже там. КАК ТАК? Я думаю, что так настроена моя среда. У меня есть сессии, установленные для InProc и использующие куки в IIS. Чем отличается IIS7?
Обновление: я использую интегрированный режим для своего пула приложений. Я посмотрел старый сайт, созданный с использованием .net 3.5 и iis6, работающий на Sever2003. Я могу войти на сайт, и он создаст для меня переменную сеанса. Затем я захожу в FireFox и открываю тот же сайт. Это требует, чтобы я вошел в систему (мое приложение перенесет вас в ваш prfile, если сеанс существует). Если я затем закрою IE и снова открою IE, а затем вернусь на свой сайт, мне потребуется снова войти в систему. То, что происходит с iis7 и моим текущим приложением, довольно странно. Единственная разница в том, как тянется мой сеанс, заключается в том, что я получаю переменную при приведении текущего обработчика к объекту Page: (Page) HttpContext.Current.Handler
Обновление: хорошо, я думаю, что я нашел, где проблемы, и это имеет отношение к приведению HttpContext.Current.Handler к текущему объекту страницы. У меня есть файл конфигурации, в который я хотел поместить свойство, чтобы все другие классы могли ссылаться на центральную точку, чтобы получить созданный мной объект сеанса пользователя. HttpContext.Current.session всегда был нулевым, и кто-то предложил использовать HttpContext.Current.Handler. Я создал простую страницу, которая проверяет, был ли создан сеанс varaible, и если нет, то он его создает. Затем я распечатываю значение. Когда я закрываю браузер, сеанс ушел. Итак, это работает. Код, который я изначально написал в этом сообщении, был действительно для кнопки «назад», но мне не нужна эта благодарность за то, что Эндрю указал на это. Так что, я думаю, неясно, почему этот сеанс, извлеченный из Hnadler, всегда доступен, пока я не очищу его специально.