我使用以下代码添加和更新Cookie:
public ActionResult SaveUserTypeCookies(string usertype)
{
if (Request.Cookies["User"] != null)
{
HttpCookie cookie = Request.Cookies["User"];
cookie.Values["UserType"] = usertype;
cookie.Expires = DateTime.MaxValue;
Response.SetCookie(cookie);
}
else
{
HttpCookie cookie = new HttpCookie("User");
//Need to remove below comment at production deployement
//cookie.HttpOnly = true;
//cookie.Secure = true;
cookie.Values["UserType"] = usertype;
cookie.Expires = DateTime.MaxValue;
Response.Cookies.Add(cookie);
}
return RedirectToAction("CreateUpsID");
}
我正在使用以下代码检查Cookie是否存在:
@if (!(Request.Cookies["User"] != null))
{
<div id="overlay_div" class="overlay"></div>
}
我用过
@if (!(Request.Cookies["User"] != null))
而不是
@if ((Request.Cookies["User"] == null))
避免任何自动重置为空。
此代码适用于Chrome,但当我使用IE11时,Cookie不会持续存在。