asp.net中的会话变量

时间:2011-09-02 13:07:16

标签: asp.net session-variables

我有一个使用会话变量的asp.net webapplicatoin。我在触发session_end时清除会话值,但是在关闭上一个窗口后在新窗口中打开应用程序时,会话值保留。

有没有办法可以摆脱会话值。

提前致谢... Phani

2 个答案:

答案 0 :(得分:0)

Windows /标签不会创建新会话,新的浏览器实例会这样做。

此外,当会话结束时,会话变量消失了。您无法控制GC何时从内存中删除它们,但无法再访问它们。

答案 1 :(得分:0)

简单地关闭窗口时,会话不会结束。会话到期时结束。 ASP.NET无法知道用户是否关闭窗口。见MSDN on SessionStateModule.End Event

有关详细说明,请参阅this answer

在我的头脑中,您可以做的是检测用户何时关闭窗口,例如在jQuery中使用unload()事件,并向Web服务发送请求,然后结束会话。