C# 在ASP.NET Core 3.1中创建具有自定义名称的自定义cookie
在ASP.NET Framework中,可以在构造函数中使用自定义名称定义自定义cookie,如下所示:C# 在ASP.NET Core 3.1中创建具有自定义名称的自定义cookie,c#,asp.net-core,asp.net-core-3.1,C#,Asp.net Core,Asp.net Core 3.1,在ASP.NET Framework中,可以在构造函数中使用自定义名称定义自定义cookie,如下所示: HttpCookie customCookie = new HttpCookie("name"); customCookie.Expires = DateTime.Now.AddMinutes(10); customCookie["key"] = "value"; context.Response.Cookies.Add(customCookie); CookieOptions cooki
HttpCookie customCookie = new HttpCookie("name");
customCookie.Expires = DateTime.Now.AddMinutes(10);
customCookie["key"] = "value";
context.Response.Cookies.Add(customCookie);
CookieOptions cookieOptions = new CookieOptions();
cookieOptions.Expires = DateTime.Now.AddMinutes(10);
context.Response.Cookies.Append("key", "value", cookieOptions);
在ASP.NET Core中,方法已更改为类似以下内容:
HttpCookie customCookie = new HttpCookie("name");
customCookie.Expires = DateTime.Now.AddMinutes(10);
customCookie["key"] = "value";
context.Response.Cookies.Add(customCookie);
CookieOptions cookieOptions = new CookieOptions();
cookieOptions.Expires = DateTime.Now.AddMinutes(10);
context.Response.Cookies.Append("key", "value", cookieOptions);
似乎无法设置cookie的“名称”,因为类中没有定义选项。ASP.NET-多值cookie兼容性 线路
customCookie["key"] = "value";
是指向值
属性的快捷方式。相当于
customCookie.Values["key"] = "value";
此属性允许使用多值Cookie,提供此属性是为了与早期版本的Active Server Pages(ASP)兼容
ASP.NET核心cookie-多值cookie没有内置兼容性
ASP.NET Core取消了对旧的传统多值Cookie的支持,因为此功能从未标准化。有关不支持它的更多信息,请参阅。该链接还为ASP.NET核心中的多值cookie提供了一个很好的扩展
这条线
context.Response.Cookies.Append("key", "value", cookieOptions);
将cookie添加到HTTP响应中,并将新cookie的名称设置为“key”,将其值设置为“value”。我能够通过使用JSON.NET序列化字典来解决我的用例。谢谢