2013-03-25 2 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에서 쿠키를 설정하려고합니다. 위의 코드는 contoller 액션입니다. 이 코드의 목적은 쿠키가 없으면 쿠키를 설정하고 쿠키가 있으면 값을 읽는 것입니다.쿠키가 asp.net mvc에 설정되어 있지 않음

그러나 중단 점을 설정하면 쿠키가 전혀 설정되지 않은 것처럼 else 부분이 절대 실행되지 않습니다.

무엇이 잘못 되었나요?

+0

시도 들러는 응답을 검사합니다. MVC4 컨트롤러에 코드 복사하기 {code} Set-Cookie : last_visited = 25/03/2013 10:38:51; 만료 = 2011 년 4 월 4 일 17:38:52 GMT; 경로 =/ {코드}가 Fiddler에 있습니다. – Dylan

답변

2

첫 번째 if 문이 잘못된 쿠키를 확인하고 있습니까? "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

나중에 내 .Haven은 2 일 동안 잤다, 나의 머리는 공처럼 구르다. 어쨌든 고마워. –

관련 문제