В чем разница между Session.Abandon () и Session.Clear ()

В чем разница между уничтожением сеанса и удалением его значений? Можете ли вы привести пример, демонстрирующий это?

Я искал этот вопрос, но не понял полного ответа. Некоторые ответы:

Session.Abandon() разрушает сессиюSession.Clear() просто удаляет все значения

Друг сказал мне это:

Очистка сеанса не отменяет сеанс, он все еще существует с тем же идентификатором для пользователя, но со значениями, просто очищенными.

Отмена полностью уничтожит сеанс, а это означает, что вам нужно начать новый сеанс, прежде чем вы сможете сохранить больше значений в сеансе для этого пользователя.

Приведенный ниже код работает и не выдает никаких исключений.

Session.Abandon();
Session["tempKey1"] = "tempValue1";

Когда вы отменяете () сеанс, вы (или, скорее, пользователь) получите новый SessionId

Когда я тестирую сеанс, он не вносит никаких изменений, когда я отменяю сеанс.

Я просто нахожу одно отличие:session.Abandon() повышенияSession_End мероприятие

Ответы на вопрос(10)

Ваш ответ на вопрос