我有一个带登录表单的应用程序,我希望在登录后显示标签或其他东西,我的数据库中的用户名和其他信息。
例如,在您使用用户名“admin”登录后,在下一个表单上显示一个文本“欢迎管理员!” 。或者,如果我使用用户名“john”登录,请在下一个表单上显示“Welcome John Snow!”文字。
我怎么能这样做?
答案 0 :(得分:0)
您必须跟踪会话标识符并使用它来通过当前会话跟踪用户,然后您可以通过您在应用程序中使用的任何语言/ API在GUI上显示该标识符。或者,如果您不想或不需要通过登录页面跟踪您的用户,您可以通过允许下一个类继承之前的类来将其转发到处理下一页的类。
然而,如果没有关于项目的更多细节,很难更具体。
答案 1 :(得分:0)
最好的方法是将UserName变量放在Session中并在下一页中访问它。
伪代码...... 在认证检查后的登录页面中写这个(假设第二页是Home.aspx):
Session["USER_NAME"] = userName;
Respinse.Redirect("Home.aspx");
在Home.aspx page_load函数中,写下此内容以从会话和显示中获取名称,如果没有会话值,则将用户重定向到登录页面。
if(Session["USER_NAME"] != null)
{
lblUserName.Text = Session["USER_NAME"].ToString();
}
else
{
Respinse.Redirect("Login.aspx");
}