Подтвердить что ты не робот

Как удалить конкретный сеанс в asp.net?

У меня проблема. Я создал две сессии:

  • Session["userid"] = UserTbl.userid;
  • Session["userType"] = UserTbl.type;

Я знаю, как удалить сеансы с помощью Session.clear(). Я хочу удалить сеанс "userType".

Как удалить определенный сеанс?

4b9b3361

Ответ 1

Нет ничего похожего на контейнер сеанса, поэтому вы можете установить его как null

но вы можете установить отдельный элемент сеанса как null или "

like Session["userid"] = null;

Ответ 2

Session.Remove("name of your session here");

Ответ 3

вы можете использовать метод Session.Remove(); Session.Remove

Session.Remove("yourSessionName");

Ответ 4

Существует множество способов аннулирования сеанса в ASP.NET. Сессия по сути является файлом cookie, установленным в браузере клиента и в ASP.NET, его имя обычно ASP.NET_SessionId. Итак, теоретически, если вы удалите этот файл cookie (что в терминах браузера означает, что вы установили дату его истечения на какую-то дату в прошлом, поскольку куки файлы не могут быть удалены разработчиками), вы потеряете сеанс на сервере. Другой способ, как вы сказали, - использовать метод Session.Clear(). Но лучшим способом является установка другого нерелевантного объекта (обычно null value) в сеансе в соответствии с ключом. Например, чтобы аннулировать Session["FirstName"], просто установите его на Session["FirstName"] = null.

Ответ 5

Единственный способ удалить сеансы - установить его в null;

Session["your_session"] = null;

Ответ 6

if (HttpContext.Current.Session ["sessionname"]! = null) HttpContext.Current.Session.Remove("sessionname");

меня устраивает