cookies不会在IE中持久存在,但与Chome一起工作正常

时间:2015-12-02 07:52:34

标签: c# asp.net-mvc

我使用以下代码添加和更新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不会持续存在。

0 个答案:

没有答案