与会话有关的错误

时间:2012-09-10 08:15:04

标签: c# asp.net session

这里有问题。我有这个登录控件。在登录按钮中,我使用此代码保持会话。

 protected void LoginButton_Click(object sender, EventArgs e)
{
    Session["username"] = Login1.UserName;
}

然后,当我尝试检索回会话时,它会出错。 我该怎么办?这是检索会话的代码。

 protected void Page_Load(object sender, EventArgs e)
{
    string username = Session["username"].ToString();
    Label9.Text = username;
}

错误:对象引用未设置为对象的实例。 谢谢你的帮助。

2 个答案:

答案 0 :(得分:1)

我认为在初始的Page_Load事件中,只有您的代码正在检查Session变量。试着用这个:

protected void Page_Load(object sender, EventArgs e)
{
    if(! IsPostBack){
       string username = Session["username"].ToString();
       Label9.Text = username;
    }
}

答案 1 :(得分:-1)

当页面加载时,我认为调用了Page_Load,然后尚未设置会话。 做这样的事情:

if(Session["username"] != null)
{
    string username = Session["username"].ToString();
    Label9.Text = username;
}