1
我設置cookie的登錄成功的時候是這樣的:MVC 5設置cookie的到期,但到期回01/01/0001
public JsonResult LoginWithPassword(String password)
{
Response.Cookies.Remove("Auth");
string CookieName = "Auth";
long UserId = 4;
HttpCookie myCookie = HttpContext.Response.Cookies[CookieName] ?? new HttpCookie(CookieName);
myCookie.Values["UserId"] = UserId.ToString();
myCookie.Values["LastVisit"] = DateTime.Now.ToString();
myCookie.Expires = DateTime.Now.AddDays(1);
HttpContext.Response.Cookies.Add(myCookie);
return Json(new { IsSuccess = true, ReturnUrl = returnUrl });
}
else
{
return Json(new { IsSuccess = false, Message = "Login fail, Wrong Password" });
}
}
,我在翻頁/動作閱讀:
public ActionResult Index()
{
if (HttpContext.Request.Cookies["Auth"] == null)
return RedirectToAction("Login", "Access");
return View();
}
真的很奇怪「Auth」的Cookie總是空的。當我在調試斷點檢查過期日期時,我獲得了到期日期:01/01/0001
。
爲什麼發生這種情況以及如何解決這個問題? 此操作在兩個不同的控制器中
感謝您的解決方案。老實說我找到了一些東西。如果我在動作代碼中使用斷點,cookie過期變爲01/01/0001我不知道爲什麼會發生這種情況。我嘗試刪除所有斷點,應用程序工作順利 – yozawiratama