我想在.Net Web应用程序中的特定会话变量上设置超时,但只保留其他Session变量。这可能吗?
示例:
我有5个会话变量
会话(VAR1) 会议(VAR2) 会议(VAR3) 会议(VAR4) 会话(VAR5)
我想设置它以使Session(var1)到Session(var4)的超时时间为8小时(480分钟),但Session(var5)的超时时间为20分钟。可以吗?
答案 0 :(得分:1)
您需要使用Session的替代方案进行存储。 asp.net的缓存框架可能是最接近的选择。请参阅Adding Items to the Cache。
答案 1 :(得分:1)
您可以提供自己的HttpSessionStateBase实现,您的版本会知道它们在会话中刷新后可以存储和更改的不同内容。
答案 2 :(得分:1)
您可以通过在此变量(或关联的时间戳字段)中创建时间戳字段来实现此功能。时间戳将标记变量变为无效的时间。当然,您必须在代码中手动处理时间戳(每次点击更新它,并在会话失效时将其从会话中删除)。