c# - 如何在C#中从服务器端删除cookie

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

我有一个 asp.net mvc 4 项目,尝试更新我的 cookie,但它不是创建另一个 cookie,例如我有 3 个名为“page”的重复 cookie。有人知道如何解决这个问题吗?

if (page != null && Request.Browser.Cookies) {
                if (Response.Cookies.AllKeys.Contains("page")) {
                    var aCookie = new HttpCookie("page") { Expires = DateTime.Now.AddDays(-1) };
                    Response.Cookies.Add(aCookie);
                }

                var pages = new HttpCookie("page") { Value = page.ToString(), Expires = DateTime.Now.AddDays(7) };
                Response.Cookies.Add(pages);
            }

最佳答案

如果您想从客户端删除 cookie,您应该将其设置为过期:

if (page != null && Request.Browser.Cookies) {
    Response.Cookies.Remove("page");
    var aCookie = new HttpCookie("page") { Expires = DateTime.Now.AddDays(-1) };
    Response.Cookies.Add(aCookie);
}

但如果您只需要更新它,只需将其从响应中删除并添加新版本即可:

if (page != null && Request.Browser.Cookies) {
    Response.Cookies.Remove("page");
    var pages = new HttpCookie("page") { Value = page.ToString(), Expires = DateTime.Now.AddDays(7) };
    Response.Cookies.Add(pages);
}

关于c# - 如何在C#中从服务器端删除cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24956543/

相关文章:

c# - 摇动动画(3d版)

c# - 将 List<T> 序列化为 XML,并将 XML 反转为 List<T>

c# - 如何使用网络浏览器控件在弹出窗口中提供用户名和密码

asp.net - ASP.NET MVC 5 中基于角色的单独页面授权

c# - 如何检查 QueryString 是否没有参数

c# - 在 View 中使用 LINQ

c# - 在C#中查找内存泄漏

c# - 如何从父页面调用 iframe 中的脚本?

c# - 将 MVC 连接到现有表

c# - DDD 上的免费视频(截屏视频、网络广播...)培训