Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在ASP.NET Core 3.1中创建具有自定义名称的自定义cookie_C#_Asp.net Core_Asp.net Core 3.1 - Fatal编程技术网

C# 在ASP.NET Core 3.1中创建具有自定义名称的自定义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

在ASP.NET Framework中,可以在构造函数中使用自定义名称定义自定义cookie,如下所示:

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序列化字典来解决我的用例。谢谢