在Core 2.1中: 我在控制器中设置了值
HttpContext.Session.SetString("IsAuthenticated", "true");
当我在view.cshtml中获取值时,该值为null
if (Context.Session.GetString("IsAuthenticated") == "true")
答案 0 :(得分:1)
我刚刚在我拥有的应用程序中运行了您的代码,并且该代码有效。在我看来,您尚未在应用程序中设置Cookie的使用。请尝试以下操作:
// The following goes into ConfigureServices in Startup.cs
services.AddDistributedMemoryCache();
services.AddSession(options =>
{
options.IdleTimeout = TimeSpan.FromMinutes(5);
options.Cookie.HttpOnly = true;
});
完成此操作后,您仍然需要在Startup.cs的Configure
方法中对其进行设置
// place after the other app.UseFoo methods.
app.UseSession();