【发布时间】:2009-08-13 13:27:36
【问题描述】:
我正在修复一个 ASP.NET 应用程序,该应用程序大量使用会话来跟踪每页数据。问题之一是页面之间的会话流血。
ViewState 会是更好的解决方案,除了:
- 数据不可序列化
- 每次回发来回发送的数据太多
所以我想:
- 为会话数据创建一个页面键(即在隐藏字段中粘贴一个随机 GUID)
- 即使整个会话处于活动状态,也会使废弃页面中的数据过期
有没有让部分会话数据过期的好方法?
【问题讨论】:
-
更多信息会很有用。您是要为每一页存储相同的数据结构,还是每页存储一个唯一的数据结构?为什么会话数据在用户离开后仍然存在问题?
-
@Christian Hayter 他的问题暗示多个页面使用相同的会话密钥。因此,用于页面 A 的数据将留在会话中以供页面 B 查找。