C# Cookie在第二次页面加载时未显示

C# Cookie在第二次页面加载时未显示,c#,asp.net,cookies,C#,Asp.net,Cookies,我试图实现的是创建一个cookie,以便在单击保存按钮后离开页面,然后返回页面,cookie的值应该显示在页面顶部的标签中,欢迎用户返回页面。 这是我正在使用的代码 <%@ page language="C#" %> <%@ Import Namespace="System.Data" %> <%@ Import Namespace="System.Data.OleDb" %> <script language="C#" runat="server"&

我试图实现的是创建一个cookie,以便在单击保存按钮后离开页面,然后返回页面,cookie的值应该显示在页面顶部的标签中,欢迎用户返回页面。 这是我正在使用的代码

<%@ page language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.OleDb" %>

<script language="C#" runat="server">

String welcomeBackName;
void Page_Load(Object sender, System.EventArgs e)
{

  if (Page.IsPostBack==true)
  {
    HttpCookie RUcookie = new HttpCookie("RUcookie");
    lblMessage.Text = txtfirstname.Text.Substring(0,1).ToLower() + txtlastname.Text.ToLower() + "@radford.edu";
    RUcookie.Value = "Welcome " +txtfirstname.Text +" "+ txtlastname.Text;
    RUcookie.Expires = DateTime.Now.AddHours(1);
    Response.Cookies.Add(RUcookie); 

    if(RUcookie != null)
    {
        welcomeBackName = Request.Cookies["RUcookie"].Value;
        welcomeBack.Text = welcomeBackName;
    }
  } 

}

</script>

<html>
<form id=form1 runat="server">
    <br>
    <ASP:Label id="welcomeBack" Text="" size="60" runat="server"/>
    <br>
    <br>
    <br>
    First Name: <asp:TextBox id="txtfirstname" size="20" runat="server"/><br>
    <br>
    Last Name : <asp:TextBox id="txtlastname" size="20" runat="server"/><br>
    <br>
    <ASP:Button id="butSave" Text="Save" Autopostback=true runat="server"/>
    <br>

    <br>
    Email: <asp:Label id="lblMessage" size="80" forecolor=Blue runat="server"/><br>
</form>
</html>

字符串返回名称;
无效页面加载(对象发送方,System.EventArgs e)
{
如果(Page.IsPostBack==true)
{
HttpCookie RUcookie=新的HttpCookie(“RUcookie”);
lblMessage.Text=txtfirstname.Text.Substring(0,1).ToLower()+txtlastname.Text.ToLower()+“@radford.edu”;
RUcookie.Value=“Welcome”+txtfirstname.Text+“”+txtlastname.Text;
RUcookie.Expires=DateTime.Now.AddHours(1);
响应.Cookies.添加(RUcookie);
if(RUcookie!=null)
{
welcomeBackName=Request.Cookies[“RUcookie”].Value;
Text=welcomeBackName;
}
} 
}




名字:

姓氏:



电子邮件:
几乎没有什么不对的地方

您说过希望在用户离开页面并返回时发生这种情况。根据定义,您不会处于回发状态。那将是新的一页。与其检查它是否是回发,不如简单地检查cookie是否存在


另一件事是,根据定义,IsPostBack是一个布尔值。您不需要检查它是否等于true。要么是真的,要么是假的。

非常感谢@mason,我不敢相信我错过了回发声明中的if语句。