我已使用以下代码设置了Cookie。
HttpCookie cookie = new HttpCookie("test");
cookie.Expires = DateTime.Now.AddDays(1);
cookie.Values.Add("UserID", UserID);
cookie.Values.Add("UserName", UserName);
cookie.Values.Add("IsUserAdmin", IsUserAdmin.ToString());
HttpContext.Response.Cookies.Add(cookie);
我使用下面的代码删除/删除cookie。
HttpCookie cookie = new HttpCookie("test");
cookie.Expires = DateTime.Now.AddDays(-1d);
Response.Cookies.Add(cookie);
但是我无法删除/删除cookie
有没有更好的方法来删除cookie?
请给我一些建议。
答案 0 :(得分:1)
编辑:
在发布此答案时,OP发布的代码显示删除了Partner_Portal_Cookie
cookie。从那时起,已发布的代码已被编辑。
您是否正在尝试删除test
Cookie?
您的代码示例显示您删除了Partner_Portal_Cookie
Cookie。
尝试类似:
if (Request.Cookies["test"] != null)
{
HttpCookie myCookie = new HttpCookie("test");
myCookie.Expires = DateTime.Now.AddDays(-1d);
Response.Cookies.Add(myCookie);
}
示例来自mdsn。基本上我们正在检查cookie是否存在。如果是,请使用同名创建一个新Cookie,并将过期日期设置为过去。
答案 1 :(得分:0)
+------+-------------------+
| user | friend1 | friend2 |
+------+---------+---------+
|user1 | Adam | Filip |
|user2 | Boris | Norbert |
|user3 | Filip | Carol |
|user4 | Carol | Filip |
|user5 | Boris | Patricia|
+------+---------+---------+
此代码正在我这边工作。
答案 2 :(得分:-1)
试试这个:
public static void ClearCookies()
{
HttpCookie cookie = new HttpCookie("test");
cookie.Name = "test";
cookie.Value = string.Empty;
cookie.Expires = DateTime.Now.AddDays(-1);
if (HttpContext.Current.Response.Cookies.AllKeys.Contains("test"))
{
HttpContext.Current.Response.Cookies.Set(cookie);
}
else
{
HttpContext.Current.Response.Cookies.Add(cookie);
}
}