使用SignalR时如何在hangfire中访问Session(IDashboardAuthorizationFilter的实现中的Authrize方法?)>

问题描述 投票:0回答:1
我正在使用hangfire,出于授权目的,我正在尝试访问Authorize([NotNull] DashboardContext context)方法中的会话值,该值为null。请注意,在我将SignalR集成到我的应用程序中后,便遇到了此问题。

如果我删除“ app.MapSignalR();”从startup.cs行,我能够成功访问会话

public void Configuration(IAppBuilder app) { ... app.MapSignalR(); //if I remove this line, session is accessible ... } public class MyRestrictiveAuthorizationFilter : IDashboardAuthorizationFilter{ public bool Authorize([NotNull] DashboardContext context) { HttpSessionStateBase session = ((System.Web.HttpContextWrapper)(owinEnvironment["System.Web.HttpContextBase"])).Session; //Which is null session = HttpContext.Current.Session; //Also Null } }

[请注意,在startup.cs的配置方法中引入“ app.MapSignalR()”之后,会话值为空

我正在使用hangfire,出于授权目的,我正在尝试访问Authorize([NotNull] DashboardContext context)方法中的会话值,该值为null。请注意,此问题具有...

c# asp.net session hangfire
1个回答
0
投票
根据ASP.Net Core Docs,获取会话的空值是正常行为。
© www.soinside.com 2019 - 2024. All rights reserved.