餅乾

2013-03-25 199 views
0
if (HttpContext.Request.Cookies["time"]==null) 
{ 
    HttpCookie cookie = new HttpCookie("last_visited",DateTime.Now.ToString()); 
    cookie.Expires = DateTime.Now.AddDays(10); 
    HttpContext.Response.Cookies.Add(cookie); 
} 
else if(HttpContext.Request.Cookies["last_visited"]!=null) 
{ 
    ViewBag.last_visited = HttpContext.Request.Cookies["last_visited"].Value; 
} 

我想設置在asp.net mvc的一個cookie在asp.net mvc的未設置。以上是我在控制器操作中的代碼。這個代碼的目的是設置一個cookie,如果沒有的話,並且如果有一個cookie集合,則讀取一個值。餅乾

但是,設置斷點之後,我發現瞭如果零件永遠不會被執行,就好像根本沒有設置cookie一樣。

這裏有什麼問題?

+0

嘗試提琴手檢查響應。將代碼複製到MVC4控制器中我看到 {code} Set-Cookie:last_visited = 25/03/2013 10:38:51; expires =星期四,04-Apr-2013 17:38:52 GMT;路徑=/ {code}在提琴手。 – Dylan 2013-03-25 17:40:41

回答

2

第一個if語句是檢查錯誤的cookie嗎? "time"應該是"last_visited"而不是?

固定碼:

if (HttpContext.Request.Cookies["last_visited"]==null) 
{ 
    HttpCookie cookie = new HttpCookie("last_visited",DateTime.Now.ToString()); 
    cookie.Expires = DateTime.Now.AddDays(10); 
    HttpContext.Response.Cookies.Add(cookie); 
} 
else if(HttpContext.Request.Cookies["last_visited"]!=null) 
{ 
    ViewBag.last_visited = HttpContext.Request.Cookies["last_visited"].Value; 
} 
+1

你是我的壞人。我沒有睡2天,我的頭像滾球一樣滾動。無論如何,謝謝。 – 2013-03-25 17:51:15