Tag: 会话的

Session.Abandon()和Session.Clear()之间的区别是什么

销毁一个会话并删除它的值有什么区别? 你能举一个例子来certificate这一点吗? 我search了这个问题,但是没有把握完整的答案。 一些答案是: Session.Abandon()破坏会话 Session.Clear()只是删除所有的值 有朋友告诉我这个: 清除会话将不会取消会话,它仍然存在与用户相同的ID,但值简单地清除。 放弃会完全破坏会话,这意味着您需要开始一个新的会话,然后才能在该会话中为该用户存储更多的值。 下面的代码工作,不会抛出任何exception。 Session.Abandon(); Session["tempKey1"] = "tempValue1"; 当你放弃()一个会话,你(或者更确切的说是用户)会得到一个新的SessionId 当我testing会话时,我放弃会话时没有任何改变。 我只是发现一个区别: session.Abandon()引发Session_End事件