c# - asp.net mvc 5 cookies 不持久在本地服务器上

标签 c# asp.net asp.net-mvc cookies

您好,我正在尝试在用户登录后立即在我的 mvc5 应用程序中设置一个 cookie,并且我希望 cookie 在浏览器关闭后仍然存在,但是在我关闭浏览器后请求的 cookie 似乎为空(当它工作正常时我尝试在登录后立即访问)。

这是我创建 cookie 的方式:

public ActionResult Login(User u)
    {
        // this action is for handle post (login)
        if (ModelState.IsValid) // this is check validity
        {
            using (RoadTexEntities rte = new RoadTexEntities())
            {
                var v = rte.Users.Where(a => a.UserEmail.Equals(u.UserEmail) && a.password.Equals(u.password)).FirstOrDefault();
                if (v != null)
                {
                    var checkBox = Request.Form["rememberMe"];
                    if (checkBox == "on")
                    {
                        string user = JsonConvert.SerializeObject(v);
                        HttpCookie userCookie = new HttpCookie("user");
                        userCookie.Values.Add("details", user);
                        userCookie.Expires.AddDays(1);
                        Response.Cookies.Add(userCookie);
                    }
                    Session["username"] = v.UserFirst;
                    return RedirectToAction("AfterLogin");
                }
                else
                {
                    ViewBag.Message = "Invalid Login Credentials";
                }
            }
        }
        return View(u);
    }

 public ActionResult Index(){

        HttpCookie userCookie = Request.Cookies["user"];
        if (userCookie != null)
        {
            return RedirectToAction("AfterLogin");
        }
        else
        {
            return RedirectToAction("Login");
        }
    }

我已经检查了类似的问题并检查了我的浏览器设置,但是当我请求 cookie 时我仍然得到 null。

最佳答案

改成

 userCookie.Expires = DateTime.Now.AddDays(1);

因为您之前的代码不会设置 cookie 的过期时间。

关于c# - asp.net mvc 5 cookies 不持久在本地服务器上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27493153/

相关文章:

c# - 和地址掩码(需要较低的位)C#

ASP.NET 图表在数字旁边添加百分比

c# - 如何在 Visual Studio 中编写 C# 单元测试?

c# - 如何将 DataTable 复制到 SharePoint SPList?

javascript - 每次刷新时从内部更新面板执行 javascript

c# - 如何在 ASP.net MVC 5 中制作自定义分页依赖于 Bootstrap ?

asp.net-mvc - 托管 azure MVC 应用程序时,我的 web.config 的 appSettings 集合为空

c# - 创建 View 中可用的自定义助手

asp.net - 使用 MVC 库在 ASP.NET Web 窗体中进行基于属性的验证?

c# - 在 C# 中以编程方式更改颜色