是否可以为指定的Session变量设置会话超时,而不是其他会话变量

时间:2009-01-28 20:01:55

标签: vb.net asp.net-2.0

我想在.Net Web应用程序中的特定会话变量上设置超时,但只保留其他Session变量。这可能吗?

示例:

我有5个会话变量

会话(VAR1) 会议(VAR2) 会议(VAR3) 会议(VAR4) 会话(VAR5)

我想设置它以使Session(var1)到Session(var4)的超时时间为8小时(480分钟),但Session(var5)的超时时间为20分钟。可以吗?

3 个答案:

答案 0 :(得分:1)

您需要使用Session的替代方案进行存储。 asp.net的缓存框架可能是最接近的选择。请参阅Adding Items to the Cache

答案 1 :(得分:1)

您可以提供自己的HttpSessionStateBase实现,您的版本会知道它们在会话中刷新后可以存储和更改的不同内容。

答案 2 :(得分:1)

您可以通过在此变量(或关联的时间戳字段)中创建时间戳字段来实现此功能。时间戳将标记变量变为无效的时间。当然,您必须在代码中手动处理时间戳(每次点击更新它,并在会话失效时将其从会话中删除)。