【发布时间】:2018-04-21 11:46:17
【问题描述】:
我想将“Microsoft.AspNetCore.Session”包集成到我的 aspnetboilerplate 解决方案 (ASP.NET Core 2.x) 中以使用会话。
我通过 NuGet 将“Microsoft.AspNetCore.Session”包添加到我的 Web.Mvc 项目中。然后我将以下代码插入ConfigureServices方法(Startup.cs):
// Session Configuration
services.AddSession(options =>
{
// Set a short timeout for easy testing.
options.IdleTimeout = TimeSpan.FromHours(4);
options.Cookie = new CookieBuilder { HttpOnly = true };
});
之后我在Configure 方法(Startup.cs)中在app.UseAbp() 之后调用app.UseSession()。
现在,如果我运行应用程序,我会收到以下错误:
Microsoft.AspNetCore.Server.Kestrel - 连接 ID“0HL96OHPL754P”, 请求 ID“0HL96OHPL754P:00000001”:引发了未处理的异常 由应用程序。 System.ArgumentNullException:值不能 空值。参数名称:key at Microsoft.AspNetCore.Http.Internal.RequestCookieCollection.get_Item(字符串 键)在 Microsoft.AspNetCore.Session.SessionMiddleware.d__9.MoveNext()
如果我删除app.UseSession() 调用,应用程序将正常运行。
有什么想法吗?请帮忙!
【问题讨论】:
-
您可以尝试在 CookieBuilder 中指定 cookie 的名称吗?
标签: c# asp.net-core aspnetboilerplate