我想在使用它之前检查基页面类中是否存在 Session,但我发现如果它不存在,只需检查它就会抛出异常:
if (Session != null)
{
Session.Remove("foo");
}
会抛出这个异常:
会话状态只能在 enableSessionState 设置为 true 时使用,无论是在配置文件中还是在 Page 指令中。还请确保 System.Web.SessionStateModule 或自定义会话状态模块包含在应用程序配置的 \\ 部分中。
检查发生在我的所有 aspx 页面派生自的基页面类的 Load 事件中。该应用程序启用了会话,并且它在 httpModules 节点中列出了模块。这是一个经常使用会话的应用程序,通常没有问题。
我只在某些页面上收到此错误,而且大多数时候它不可靠。我知道我应该做一些不同的事情来防止错误,但我不确定是什么?
我可能在生命周期中过早地调用 Session 吗?我是否没有正确检查会话是否可用?