заставить Session_Start - PullRequest
       17

заставить Session_Start

3 голосов
/ 21 февраля 2012

Как заставить метод Session_Start на моем global.asax вызываться каждый раз, когда мое приложение запускается в режиме разработки?

У меня есть некоторый код, который мне нужно отладить, но иногда он вызывается,иногда это не так.Я уже пытался закрыть «Сервер разработки ASP.NET», но безуспешно.

Ответы [ 3 ]

4 голосов
/ 21 февраля 2012

Ознакомьтесь с этой статьей http://sandblogaspnet.blogspot.com/2008/03/methods-in-globalasax.html

Событие запуска сеанса запускается только тогда, когда начинается новый сеанс для пользователя. Как только «Session_Start» для пользователя запущено, тогда, если пользователь делает последующий запрос к любому ресурсу в приложении, это событие вообще не инициируется. Событие инициируется только тогда, когда истекает сеанс пользователя, а затем пользователь снова пытается получить доступ к любому ресурсу в приложении.

Вы уверены, что не ищете Application_Start? Если нет, то до тех пор, пока вы сбрасываете сеанс, это событие должно вызываться.

РЕДАКТИРОВАТЬ: Также ознакомьтесь с этой статьей о ком-то, кто пытался сделать то же самое, что и вы http://forums.asp.net/t/1608241.aspx/1

С этой страницы:

Вы правы, я только что проверил это, поместив <sessionState timeout="1"/> в мой файл Web.config. Потом я подождал 1 минуту и ​​нажал на ссылку на странице. Это немедленно вернулся в Session_Start и повторно аутентифицировал пользователь.

РЕДАКТИРОВАТЬ 2: Попробуйте вызвать Session.Abandon () со своей стартовой страницы. Он должен удалить сеанс и потребовать, чтобы пользователь начал новый.

2 голосов
/ 21 февраля 2012

Мне удается это сделать, перезапустив «Службу состояний ASP.NET», которая является службой, используемой для управления состоянием сеанса на компьютере.

Не идеальное решение, но решает мою проблему.

0 голосов
/ 21 февраля 2012

Это может быть неприятно, но комбинация перезапуска сервера разработки ASP.net и закрытия и повторного открытия вашего браузера должна сбросить сеанс.

...