2

我需要在随机注销时调试的应用程序之一的 web.config 中有以下会话状态条目

<sessionState mode="InProc" stateConnectionString="tcpip=127.0.0.1:42424" sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes" cookieless="false" timeout="20"/>

我检查了网络服务器,win 2003,Asp.net 状态服务没有运行,也没有运行 sql server 实例。

根据 web.config 中的此条目,会话超时是多少。20分钟?我们是否必须运行 Asp.net 状态服务才能使用 stateConnectionString?

4

1 回答 1

4

您已将mode属性设置为InProc,这意味着会话将存储在 IIS 工作进程中。这意味着stateConnectionStringandsqlConnectionString可能被忽略。

如果您想使用其他模式,您应该将 InProc 更改为StateServerSQLServer分别。更多细节在这里

使用 InProc 会话仍应存储 20 分钟,但如果您的工作进程回收,默认情况下每 29 小时发生一次,它将丢失所有会话,因此您可能希望使用StateServer(ASP.NET 状态服务应该是开始),或另一个更持久的选项来管理登录用户的任务。

于 2013-09-18T15:26:59.087 回答