В чем разница между Session.Abandon () и Session.Clear ()
В чем разница между уничтожением сеанса и удалением его значений? Можете ли вы привести пример, демонстрирующий это?
Я искал этот вопрос, но не понял полного ответа. Некоторые ответы:
Session.Abandon()
разрушает сессиюSession.Clear()
просто удаляет все значенияДруг сказал мне это:
Очистка сеанса не отменяет сеанс, он все еще существует с тем же идентификатором для пользователя, но со значениями, просто очищенными.
Отмена полностью уничтожит сеанс, а это означает, что вам нужно начать новый сеанс, прежде чем вы сможете сохранить больше значений в сеансе для этого пользователя.
Приведенный ниже код работает и не выдает никаких исключений.
Session.Abandon();
Session["tempKey1"] = "tempValue1";
Когда вы отменяете () сеанс, вы (или, скорее, пользователь) получите новый SessionId
Когда я тестирую сеанс, он не вносит никаких изменений, когда я отменяю сеанс.
Я просто нахожу одно отличие:session.Abandon()
повышенияSession_End
мероприятие