销毁会话和删除其值有什么区别?你能举一个证明这个的例子吗?
我搜索了这个问题,但没有掌握全部答案.一些答案是:
Session.Abandon() 破坏会话Session.Clear() 只删除所有值一位朋友告诉我这个:
清除会话不会取消设置会话,它仍然存在与用户相同的ID,但只是清除了值.
放弃将完全破坏会话,这意味着您需要先开始一个新会话,然后才能在该会话中为该用户存储更多值.
以下代码有效,不会抛出任何异常.
Session.Abandon();
Session["tempKey1"] = "tempValue1";
Run Code Online (Sandbox Code Playgroud)
当您放弃会话时,您(或更确切地说是用户)将获得一个新的SessionId
当我测试Session时,当我放弃会话时它不会做任何改变.
我发现一个区别:
session.Abandon()引发Session_End事件