[英]Cookies and session state in asp.net
我想使用用户键入的名称,然后使用会话状态将此名称显示在另一个aspx页面上。
在用户输入页面上,我拥有的代码名称是
Session["name"] = TextBox1.ToString(); //Store the session state in a variable called name from the text box.
Response.Redirect("page2.aspx");
现在在page2.aspx上,我尝试调用此变量,但似乎没有任何效果。
我在页面上有一个空的label1,所以我希望将名称存储到空标签中
Label1 = Session["name"];
错误消息将类型对象转换为System.Web.UI.WebControlers.Label
Session["name"] = TextBox1.Text.ToString();
Label1.Text = Session["name"].ToString()
有两个错误:首先,您尝试分配Label1
变量,而不是标签的文本,因此得到了错误。 Session[key]
返回object
,而Label1
的类型为System.Web.UI.WebControlers.Label
第二个-您已将值设置为user
会话值,并尝试通过username
变量进行访问。
Session["username"]
是对象类型,无法使用隐式强制转换分配给label
。 您将在Session["username"]
有一个字符串,调用ToString()
会得到一个字符串,然后您可以将用户名分配给标签文本属性。
Label1.Text = Session["username"].ToString();
最好这样做,因为如果value为null,它将不会引发异常:
Label1.Text = (string)Session["username"];
如果确定设置了username
则可以执行以下操作:
Label1.Text = Session["username"].ToString();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.