2014-03-26 48 views
0

由於某種奇怪的原因,我無法將第二個字段添加到我的Cookie中,但似乎無法解決這個問題。我想要做的是在頁面上輸入名字和姓氏,然後當你點擊繼續時,它將這2個存儲到一個cookie中,然後重定向到Order頁面,上面寫着「Welcome back Mercenary」。現在在訂單頁面上,我有一個按鈕,可以返回到帶有2個名稱文本框的原始頁面。我希望爲那些人填充以前的數據,如果我改變它,讓它更新第二頁的變化。任何幫助,將不勝感激。這裏是我的代碼ASP.NET將多個值添加到Cookie中

protected void btnContinue_Click(object sender, EventArgs e) 
{ 
    if (Page.IsValid) 
    { 
     DateTime expiry = DateTime.Now.AddMinutes(5); 
     this.SetResponseCookie("FirstName", txtFirstName.Text, expiry); 
     this.SetResponseCookie("LastName", txtLastName.Text, expiry); 
    } 
    Response.Redirect("~/Order.aspx"); 
} 
private void SetResponseCookie(string name, string value, 
           DateTime expiry) 
{ 
    HttpCookie cookie = new HttpCookie("FirstName", txtFirstName.Text); 
    cookie.Values.Add("LastName", txtLastName.Text); 
    cookie.Expires = expiry; 
    Response.Cookies.Add(cookie); 
} 

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
     if (!(Request.Cookies["FirstName"] == null)) 
      txtFirstName.Text = Request.Cookies["FirstName"].Value; 
    if (!IsPostBack) 
     if (!(Request.Cookies["LastName"] == null)) 
      txtLastName.Text = Request.Cookies["LastName"].Value; 
} 

現在,一旦我打繼續它進入訂單頁面,「歡迎回來傭兵&姓氏=一個!」如果我告訴它回到第一頁它填寫「Mercenary & LastName = One」

任何幫助,將不勝感激。

+0

你通過瀏覽器回去或者通過一個按鈕導航?按一個按鈕導航 –

+0

。 –

+0

那你爲什麼不在導航前清除cookie?這是你想要的嗎? –

回答

0

加入這一行:

HttpContext.Current.Request.Cookies.Add(cookie); 

其工作的罰款和我在一起,並通過此獲得的價值,

string Name = Request.Cookies["FirstName"].Value.ToString();