关于session的一些问题
做了一个网站,里面有登陆的功能,用户信息存在本机的sqlserver 2008数据库中,在登陆页登陆成功后有如下代码:
- C# code
Session.Add("UserGroup", "Admin"); Session.Add("UserId", username);Response.Redirect("Default.aspx");
然后在Default.aspx的load方法里有如下代码:
- C# code
if ((string)Session["USerGroup"] == "Admin") { lbState.Text = "你好!管理员:" + (string)Session["UserId"]; } if ((string)Session["Admin"] == "0") { lbState.Text = "你好!用户:" + (string)Session["UserId"]; } if ((string)Session["Admin"]== null) { lbState.Text = "你好!游客!请先登陆或注册。"; }
其中lbState是default.aspx中的一个标签.
请问代码写的有什么问题吗?可是为什么无论我是否登陆,lbState上显示的总是"你好!游客!请先登陆或注册。"呢!!!!郁闷好久了
[解决办法]
如果你没有其他代码的,
请再每一次赋值后
加一个return;
下面是我的建议
- C# code
if ((string)Session["USerGroup"] == "Admin") { lbState.Text = "你好!管理员:" + (string)Session["UserId"]; } else if ((string)Session["Admin"]== null) { lbState.Text = "你好!游客!请先登陆或注册。"; } else if ((string)Session["Admin"] == "0") { lbState.Text = "你好!用户:" + (string)Session["UserId"]; }else{ lbState.Text ="到底要做什么";}
[解决办法]
Session["Admin"]
[解决办法]
应该判断的是Session["UserId"]。
把Session["Admin"]改为Session["UserId"]。
[解决办法]
+1