我在ASP.NET Web应用程序中遇到与会话状态有关的奇怪异常。注意:代码是由第三方制作的......
基本上我得到一个HttpException,其描述为:
只有在配置文件或Page指令中将enableSessionState设置为true时,才能使用会话状态。还请确保System.Web.SessionStateModule或自定义会话状态模块包含在应用程序配置的\\部分中。
发生故障的代码如下所示:
public class ExtendedWebPage : System.Web.UI.Page
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
if (Context.Session != null)
{
if (Session.IsNewSession || Session["UserID"] == null) <--- Errors Here
{
我在if语句的测试中得到了异常,但是当我查询Context.Session时它很好。到目前为止,浏览器已经通过了一个很好的登录页面并设置了一些Session变量,我可以看到Context.Session,但是这个.Session正在抛出这个例子。
有什么想法吗?
谢谢,
菲利普
答案 0 :(得分:1)
您是否检查过aspx标记中的@Page
指令中的该页面的会话是否未被禁用? Further info here
答案 1 :(得分:0)
最后通过在后面的代码中重命名Page和类来解决问题。创建一个新页面,将标记复制并粘贴到ASPX中,并将重命名的类的主体粘贴到新类的主体中。现在代码执行超出以前失败的程度。
有3个小时我不会回来......: - S