在ASP.NET 5.0中设置Cookie与之前的版本有所不同。在使用前,请确保在Startup.cs文件中添加了服务和中间件,如下所示:
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.Configure(options =>
{
// This lambda determines whether user consent for non-essential cookies is needed for a given request.
options.CheckConsentNeeded = context => true;
options.MinimumSameSitePolicy = SameSiteMode.None;
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseCookiePolicy();
app.UseMvc();
}
然后,可以使用HttpContext.Response.Cookies.Append方法设置Cookie,如下所示:
HttpContext.Response.Cookies.Append("key", "value", new CookieOptions
{
Path = "/",
HttpOnly = false,
Secure = false,
Expires = DateTimeOffset.Now.AddDays(1)
});
请注意,Path必须设置为“/”,否则Cookie将无法正常设置。此外,为了使Cookie在HTTP和HTTPS之间正确工作,Secure属性应设置为false。
希望这个解决方案可以帮助你解决ASP.NET 5.0设置Cookie的问题。