如何在asp.net中一次销毁所有会话?

Ram*_*Ram 18 c# asp.net session

我想一次销毁所有会话.我尝试了Session.Abondon()方法,但我不知道为什么这不会破坏所有的会话.

Hab*_*bib 23

你无法销毁所有会话,你只能清除当前会话.您可能必须回收应用程序池以清除所有会话.


使用HttpSessionState.Clear来清除当前会话

来自MSDN - HttpSessionState.Clear方法

从会话状态集合中删除所有键和值.

称之为:

Session.Clear();
Run Code Online (Sandbox Code Playgroud)


Joe*_*Joe 5

我想一次性销毁所有会话

我相当确定你不能这样做,除非回收应用程序。

当前接受的答案建议使用Session.Clear,但这只会清除当前会话 - 它与 相同Session.RemoveAll

为什么有两种方法ClearRemoveAll完全相同的事情?我怀疑RemoveAll是为了与ASP Classic Session 对象向后兼容而提供的,而Clear是用于从 .NET 集合中清除项目的更常用方法名称。