0

我已经实现了一个自定义会员提供程序,现在我希望为我的用户提供让网站记住他们的选项,这样他们就不必在每次访问时都登录。

我已将我的 cookie 设置为持久性,但它的作用并不持久。当我在登录网站后关闭浏览器并再次打开它时,需要我再次登录。

FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(
                1,
                model.UserName,
                DateTime.Now,
                (model.RememberMe == true ? DateTime.Now.AddDays(7) : DateTime.Now.AddMinutes(60)),
                model.RememberMe,
                userData);
            string encTicket = FormsAuthentication.Encrypt(authTicket);
            HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encTicket);
            Response.Cookies.Add(cookie);

            return RedirectToAction("Index", "Home");

在这种情况下,model.RememberMe 是一个值为 true 的布尔值,由 Visual Studio 调试器证明。

我在这里做一些公然错误的事情吗?

4

1 回答 1

0

最后,正如 Slicksim 在 2013 年 2 月 7 日的评论中指出的那样,我还必须指定 cookie 的过期时间。

于 2014-03-28T12:07:55.867 回答