ASP.NET MVC Cookie在页面更改时丢失值

时间:2010-06-14 06:28:12

标签: c# asp.net-mvc cookies

当用户登录我的网站时,我会创建一个包含一些信息的cookie。但是,每当他们从登录中更改页面时,cookie就会失去它的价值。 Cookie仍然存在,但它是空的。

我已经检查了我的代码,并且cookie没有被我所做的任何事情重写。 有没有人知道为什么当页面被更改时cookie变为空?

以下是创建cookie的方法。

public static void CreateUserCookie(long userId, string username, bool rememberMe) {

        HttpCookie cookie = new HttpCookie("CookieName");
        cookie.Value = string.Format("{0}+{1}+{2}", userId, username, SecurityUtils.CreateHashedCookieValue(userId, username));

        if (rememberMe) {
            cookie.Expires = DateTime.Now.AddMonths(1);
        } else {
            cookie.Expires = DateTime.MinValue;
        }

        HttpContext.Current.Response.Cookies.Add(cookie);
    }

1 个答案:

答案 0 :(得分:2)

调用此方法时,是否为“rememberMe”参数传入true?如果没有,cookie将立即过期。

您尚未显示您的主叫代码,因此这可能是您所做的。