Является ли код ниже более чем достаточно, чтобы проверить, не закончился ли сеанс?Самый простой и прямой способ проверить, как завершилась сессия asp.net?
if(Session["yyy"] == null)
{
//Do zzz
}
Является ли код ниже более чем достаточно, чтобы проверить, не закончился ли сеанс?Самый простой и прямой способ проверить, как завершилась сессия asp.net?
if(Session["yyy"] == null)
{
//Do zzz
}
Сессия - это объект HttpSessionState. Когда старый объект сеанса истекает, вы получаете новый. Вы можете использовать следующее:
if(Session.IsNewSession) // true if the session was created with the current request;
{
// do shizzle
}
Обратите внимание, что «IsNewSession» останется истинным, если объект сеанса пуст.
Что касается вашего вопроса, ваш чек подтвердится только в том случае, если сессия содержит значение «yyy» или нет. Он не покажет, будет ли это новый сеанс. Хотя это может показаться, что сеанс для вашего кода новый, в это время другие люди, читающие его, скорее всего, не сразу поймут, для чего нужен чек.