【发布时间】:2013-03-18 17:18:47
【问题描述】:
我有一个在 IIS 服务器 8 上运行的 asp.net 网站。
我的 Session 变量在一分钟的空闲时间(一致)后设置为 null,之后我得到未处理的异常。但是,如果我继续导航并做某事,一切都会正常。
在我的 web.config 文件中,会话状态模式为 SQLServer,超时为 20(分钟)。我认为即使默认情况下超时也是 20 分钟,所以在一分钟内发生这种情况真的让我感到困惑。
我不明白还有什么其他因素会使会话变量失去其值? 任何指针?谢谢
【问题讨论】:
-
您是否检查过 IIS 中的实际应用程序或应用程序所在的应用程序池?应用程序重新启动将丢失会话 - 这可能是由更改 web.config 或应用程序池回收引起的。
-
从未使用过 SQL Server 会话状态,但我想说第一步是尝试以某种方式确认是否按预期工作
-
我确实检查了事件日志,并且我确信发生这种情况时不会重新启动应用程序。为什么不使用 SQL Server 会话状态?
-
你只有1个网络服务器吗?
-
如果您有超过 1 个网络服务器(例如负载平衡):请查看此帖子:stackoverflow.com/questions/10555000/…
标签: asp.net iis session-variables