急,在线等,求救 ASP.NET C# 在母版页中用label显示登陆的用户名

2024-11-22 02:25:02
推荐回答(3个)
回答1:

不对 就是一个逻辑的问题 你看看下面是把TextBox1.Text赋值给Session["username"]对吧。。在你点击其他的点击后就刷新了页面 ,就是TextBox1.Text的值为空了 这是Session["username"]为空 导致LoginNamelbl.Text 也为空
Session["username"] = TextBox1.Text;
LoginNamelbl.Text = Session["username"].ToString();
应该这样改改:
先判断Session["username"] 是否有值
if(Session["username"] ==null)
{
Session["username"] = TextBox1.Text;
}
LoginNamelbl.Text = Session["username"].ToString();

回答2:

两行代码放在一个页面里?那就不对了
解决问题的方式
LoginNamelbl 要放在模板页的模板中,这样才能保证每个页面都有这个label,
LoginNamelbl.Text = Session["username"].ToString();要这句话要放在模板页pageload里面

在子页面Session["username"] = TextBox1.Text给session赋值

希望能帮助你。

回答3:

这个赋值你是放在什么地方的?是不是回发的时候赋了空值?