c# - HttpResponse : SetCookie, AppendCookie、Cookies.Add 之间的区别

标签 c# asp.net cookies

有一些不同的方法可以在 ASP.NET 中创建多值 cookie:

var cookie = new HttpCookie("MyCookie");
cookie["Information 1"] = "value 1";
cookie["Information 2"] = "value 2";

// first way
Response.Cookies.Add(cookie);

// second way
Response.AppendCookie(cookie);

// third way
Response.SetCookie(cookie);

什么时候应该使用哪种方式?我读过 SetCookie 方法更新 cookie,如果它已经存在的话。其他方式不会更新现有的 cookie 吗?

下面的代码是编写单值 cookie 的最佳实践吗?

Response.Cookies["MyCookie"].Value = "value";

最佳答案

如果我没记错的话

Response.Cookies.Add(..)

Response.AppendCookie(..)

将允许将多个同名的 cookie 附加到响应中。

另一方面

Response.SetCookie(..)

Response.Cookies[key].Value = value;

将始终覆盖以前同名的 cookie。

关于c# - HttpResponse : SetCookie, AppendCookie、Cookies.Add 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15889371/

相关文章:

c# - Bing Maps 如何检查一个点是否在 map 范围内?

c# automapper 字典到字典

c# - 图像 XAML 标记 (Win8) 不适用于某些路径

c# - 在Azure中,启动appService并不执行Startup

.net - 如何在 vb - asp.net 中拆分带有多字符分隔符的字符串?

c# - 访问匿名类型集合中的属性 - C#

asp.net - 在ASP.Net MVC中向 "View/Shared"文件夹添加子目录并调用 View

ajax - Sencha Touch 2 中未保存 Cookie

javascript - 有没有办法在 Shopify Liquid 模板中使用 Cookie?

c# - 如何在静态类中使用 IHttpContextAccessor 设置 cookie