gpt4 book ai didi

asp.net - 为什么设置为 Sql Server 时 session 超时不起作用?

转载 作者:行者123 更新时间:2023-12-04 16:55:29 28 4
gpt4 key购买 nike

我有这条线:

<sessionState mode="SQLServer" sqlConnectionString="Data Source=localhost;User Id=sa;Password=test;" timeout="1" />

它将 session 存储在 sql 状态服务器中。但是,一分钟后它不会正确超时。

当我更改行以使用 InProc 模式时:
<sessionState mode="InProc" sqlConnectionString="Data Source=localhost;User Id=sa;Password=test;" timeout="1" />

一分钟后它会超时。

任何想法为什么会发生这种情况?使用SqlServer时如何让它超时?

最佳答案

如果您使用的是 SQL Server Express,那是因为没有 SQL Server 代理来执行 DeleteExpiredSessions 过程。

以下是该问题的可能解决方法:

In the stored procedure that updates the session, I have added SQL from the DeleteExpiredSessions procedure to the update session stored procedure (I can't remember the name) so it checks for old sessions, deletes the old session, and then updates the current sessions. The stored procedure that updates the session runs on every click anyway, so I added two more lines that remove old sessions before the session is updated. This seems to work fine.

关于asp.net - 为什么设置为 Sql Server 时 session 超时不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7122201/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com