ASP.NET会话状态

时间:2011-01-12 09:45:13

标签: asp.net session-state

我在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正在抛出这个例子。

有什么想法吗?

谢谢,

菲利普

2 个答案:

答案 0 :(得分:1)

您是否检查过aspx标记中的@Page指令中的该页面的会话是否未被禁用? Further info here

答案 1 :(得分:0)

最后通过在后面的代码中重命名Page和类来解决问题。创建一个新页面,将标记复制并粘贴到ASPX中,并将重命名的类的主体粘贴到新类的主体中。现在代码执行超出以前失败的程度。

有3个小时我不会回来......: - S