Срок действия состояния сеанса в ASP.NET - PullRequest
0 голосов
/ 17 февраля 2010

Я создаю систему управления контентом, но есть одна проблема.Что я хочу сделать на своем веб-сайте, так это то, что когда пользователь открывает веб-сайт, для него создается новый sessionid, а когда пользователь закрывает веб-сайт, sessionid очищается.Как я могу это сделать?

Ответы [ 3 ]

2 голосов
/ 17 февраля 2010

Это в основном поведение сеансов по умолчанию в ASP.NET.

Когда пользователь закрывает браузер, непостоянный файл cookie, поддерживающий идентификатор сеанса, будет удален. Это на самом деле не истечет сеанс, но так как ссылки на него больше не будет, он истекает автоматически через 20 минут по умолчанию Пользователи, повторно посещающие ваш сайт после закрытия окна браузера, должны будут использовать новый сеанс. ( Источник )

2 голосов
/ 17 февраля 2010

Нет способа определить, когда пользователь закрывает ваш сайт или уходит с вашего сайта.По истечении заданного периода бездействия (по умолчанию 20 минут) объект сеанса пользователя истекает и автоматически очищается.Я предлагаю ознакомиться с MSDN-статьей о Session, в которой будут рассмотрены ваши варианты настройки Session вашего приложения.

Если, с другой стороны, вы хотите выполнять пользовательскую логику, когда пользовательсеанс начинается или заканчивается (из-за неактивности), вы можете добавить файл Global.asax в свое приложение и использовать для этого методы Session_Start и Session_End.

0 голосов
/ 17 февраля 2010

Простое решение, которое работает независимо от Asp.net, - это поставить временные метки в данные вашего сеанса и периодически удалять просроченные записи.

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