问:
我知道要销毁所有会话,我可以使用:
Session.Abandon()
根据我的question.
但为什么没有任何等效方法只能销毁一个会话。我应该使用
Session.Remove("varName")
而不是。
答案 0 :(得分:7)
首先,您谈论的是会话变量,而不是会话。每个用户都有一个会话和一个Session
对象,您可以在其中存储多个变量。
当前请求完成后,您使用Session.Abandon
放弃会话,这将删除Session
对象。
您使用Session.Remove
方法从Session
对象中删除一个变量。
答案 1 :(得分:1)
Session.Clear()
将从会话状态集合中删除所有项目,而Session.Remove(<item name>)
将仅从集合中删除一个项目并保留其余项目。 Session.Abandon()
将破坏整个会话并开始新的会话。
答案 2 :(得分:1)
您在会话和会话变量之间出错了。查看站点的用户仅分配了1个会话,在此1个会话对象中,您可以存储许多会话变量。
Session.Abandon
将删除已连接用户的当前会话。
Session.Remove
将删除您提到的特定会话变量。
Session.Clear
将删除会话的所有会话变量,但不会删除会话。
请参阅以下链接以了解会话及其用法: