【发布时间】:2013-12-12 12:10:16
【问题描述】:
我正在开发一个电子商务网站,一些用于识别用户的信息存储在会话变量中。
如果客户在16:00登录并且会话变量有两个小时的超时,在18:00,无论他在做什么,他都会断开连接。
这可能会给客户在下订单时带来问题。
即使将变量的生命周期延长到 8 小时,客户端也有可能在 23:55 重新连接(大约 16:00 后的 8 小时),并且仅在浏览 5 分钟后就会断开连接。
我想知道是否有办法延长每个连接的当前会话的持续时间。
例如: (假设每一页都有延长会话时长的代码)
the session expires every 30 minutes.
user1 connects at 16:00.
the session will expire at 16:30.
user1 enters the shopping cart page at 16:02
the session will expire at 16:32.
user1 enters the home page at 16:04
the session will expire at 16:34.
and so on ..
if user1 does not open any page for 30 minutes will be disconnected.
目前我在 vb.net 中构建了整个系统,我能够使用命令 Session.Timeout = 60 延长会话变量的持续时间(仅从第一个变量声明开始)但我找不到动态扩展的方法它。
【问题讨论】:
-
见 msdn Using ASP.NET Session State