我正在尝试使用 HttpCookie.SameSite 选项,如下面的代码片段所示,但是尽管 Visual Studio 将此选项识别为有效,但我仍收到以下构建错误。我什至可以在 System.Web 中显示该属性的定义,但编译器似乎无法识别这一点。
我的框架设置为 4.7.2
HttpCookie cookie = HttpContext.Current.Request.Cookies["MyCookie");
if (cookie != null) {
cookie.Values("MyValue") = "123";
cookie.SameSite = SameSiteMode.Strict;
HttpContext.Current.Response.SetCookie(cookie);
}
“SameSite”不是“System.Web.HttpCookie”的成员
我的框架设置为 4.7.2,但是读取 System.Web.HttpCookie 的片段,这意味着默认设置是“Lax”,但它似乎是“None”,表明正在加载不同的 System.Web编译器。
摘要:获取或设置 cookie 的 SameSite 属性的值。
返回: 表示 cookie 执行模式的枚举值之一。如果应用程序面向 .NET Framework 4.7.2 或更高版本,则默认值为 System.Web.SameSiteMode.Lax;否则,默认值为 System.Web.SameSiteMode.None。