0

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

 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;
}

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

4

2 回答 2

1

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

protected void Page_Load(object sender, EventArgs e)
{
    if(! IsPostBack){
       string username = Session["username"].ToString();
       Label9.Text = username;
    }
}
于 2012-09-10T08:25:01.893 回答
-1

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

if(Session["username"] != null)
{
    string username = Session["username"].ToString();
    Label9.Text = username;
}
于 2012-09-10T08:17:44.957 回答