即使会话值设置在global.asax事件session_start中,asp.net会话也会过期

时间:2014-11-03 10:25:10

标签: asp.net session

Global.asax

 void Session_Start(object sender, EventArgs e) 
    {// Code that runs when a new session is started
        clsCommon.setRegisteredUserCountInSessionObject();
    }

clsCommmon (类文件)

public static void setRegisteredUserCountInSessionObject()
{
    string strSql = @"SELECT COUNT(id) FROM [canonweb].[dbo].[tbl_registeredUser_details] ru where ru.allowLogin='Y'";
    HttpContext.Current.Session["registeredUserCount"] = SqlHelper.ExecuteScalar(strConnectionString, CommandType.Text, strSql).ToString();        
}

countuser.aspx (网页)

protected void Page_Load(object sender, EventArgs e)
{            
    Response.Write(HttpContext.Current.Session["registeredUserCount"].ToString());
}

有时countuser.aspx会将错误对象引用设置为未设置为对象的实例。

如果会话对象不存在,那么session_start应该触发,我们永远不会得到上述错误。

0 个答案:

没有答案