是否存在将TTL添加到ASP.NET InProc会话状态条目的受制裁方法?
示例:
Session("First", 60) = "John"
Session("Adams", 500) = "Adams"
答案 0 :(得分:2)
开箱即用,没有。单个会话状态键值对没有任何内置方法来添加TTL或TTE。
关于“全局”InProc会话状态超时,它由web.config
文件中配置的会话状态宽值(timeout
设置中的/system.web/sessionState
值)控制。
此外,虽然创建自己的会话状态提供程序可能看起来很有吸引力,但是您无法使用页面或控制器代码公开的Session
属性,因为它会返回HttpSessionState
个对象。没有任何方法,属性或索引器支持使用额外的参数来指定单个会话值超时。
您可以考虑执行以下操作:
为每个用户维护一个活动会话:
会话(“PersistMe”)= true
抓取SessionID,并使用它在ASP.NET Cache中存储值,您可以在其中使用TTL值。