我对ASP.NET完全陌生。但是,我有一个项目要使用它&遇到了问题。
是:
我有一个login.aspx文件 - 用户提供登录用户名&密码
如果登录详细信息(与数据库匹配)确定,则用户会自动重定向到logged_in.aspx。
重定向的logged_in.aspx中有一个标签(lbl_show)。
我需要在其中显示登录用户名。
我读了一堆文章&因为我缺乏理解而没有任何帮助所以请帮助我。
答案 0 :(得分:0)
会话变量,以便将任何值从一个页面传递到另一个页面。
将Username值分配给会话变量,并在logged_in页面中使用它,如下所示:
// In login page
Session["UserName"] = txtUserName.text;
//In logged_in page
label1.text = Session["UserName"];
另请参阅以下国家管理链接:
http://www.codeproject.com/Articles/492397/State-Management-in-ASP-NET-Introduction
答案 1 :(得分:0)
您需要设置身份验证Cookie。它很容易,并且允许您轻松利用ASP.NET功能(许多内置控件和用户访问控制)。我详细介绍了这篇SO帖子:
Using cookies to auto-login a user in asp.net (custom login)
答案 2 :(得分:0)
代码问题
// In login page
Session["UserName"] = txtUserName.text;
//In logged_in page
label1.text = Session["UserName"];
casting
是否缺失应该是
label1.text = Session["UserName"].ToString();
由于Session
包含object
,如果您有object
以外的内容,则必须在您的require类型中明确地将其强制转换。
假设您array
中有Session
,那么您必须将其强制转回array
。
String[] Names={"abc","def","ghi"};
Session["NamesCol"]=Names;
然后,如果你想使用它,你必须按照以下方式投射
String[] NewNames=(string[])Session["NamesCol"];