在.NET 4.0 Web应用程序中使用StateServer服务时,是否有人知道在所有活动会话中进行查询的方法?
在我的场景中,当用户导航到我们的某个合作伙伴网站时,我正在设置一段会话数据。然后,合作伙伴站点会定期调用我们网站上的服务,该服务会验证会话是否仍处于活动状态并返回其他一些数据。
当我最初使用In List all active ASP.NET Sessions中概述的解决方案使用InProc会话时,我设法让它工作,但是当我切换到使用StateServer服务时,这些技术不起作用,我无法查询会话。
有什么想法吗?
非常感谢
答案 0 :(得分:0)
我建议你仔细阅读这篇文章 - Counting the Currently Active Sessions
会话状态存储在名为ASPState的数据库中。该 数据库包括几个存储过程并创建几个 表到TempDB数据库。这些表被调用 ASPStateTempApplications和ASPStateTempSessions。知道多少 会话当前处于活动状态就像运行SELECT一样简单 AspStateTempSessions表。如果会话正在进行中 StateServer模式,这些技巧都不起作用。
参考:
Session State Management
The ASP.NET Sessions Active counter (NOT State Server) shows invalid number after installing .NET 3.5 SP!
Count Active Sessions in ASP.Net,有些与您在问题中指定的链接相同。