【发布时间】:2010-10-27 19:43:09
【问题描述】:
在 ASP.NET 3.5 中,是否可以遍历所有会话对象(不是当前会话中的对象,而是所有用户的所有会话),以便可以操作它们的集合内容(即删除一个集合项来自所有活动会话)?
如果是这样,这是否适用于 ASP.NET 状态服务(访问由共享相同状态服务的所有 Web 服务器创建的所有会话,全部来自一个 Web 服务器)?
【问题讨论】:
标签: asp.net session collections
在 ASP.NET 3.5 中,是否可以遍历所有会话对象(不是当前会话中的对象,而是所有用户的所有会话),以便可以操作它们的集合内容(即删除一个集合项来自所有活动会话)?
如果是这样,这是否适用于 ASP.NET 状态服务(访问由共享相同状态服务的所有 Web 服务器创建的所有会话,全部来自一个 Web 服务器)?
【问题讨论】:
标签: asp.net session collections
我认为我想出的唯一答案是:如果您使用的是单个框,则可以将会话放入存储在 Application 集合中的集合中,并在每个会话结束时删除每个会话.但是为了对共享状态服务器进行全局会话更新,可以归功于 tvanfosson 在其他答案之一下的评论:除了使用通过网络套接字启用此功能的第三方或备用状态服务器之外,SQL Server 是唯一合理可行的选择.
【讨论】:
This answer 到question I asked 关于从另一个会话中删除一个会话可能对您有所帮助。我没有尝试过,您需要扩展它,但似乎可以使用反射访问所有会话的容器。
【讨论】: