StructureMap 配置为在任何 ASP.NET MVC Web 请求被请求HttpContext.Current.User
时注入,如下所示:IPrincipal
For<IPrincipal>().Use(x => HttpContext.Current.User);
但是,当我的 SignalR 集线器请求依赖于 的服务时IPrincipal
,注入失败,因为HttpContext.Current
它为空。相反,SignalR 已经有一个HubCallerContext
公开当前IPrincipal
via的属性Context.User
。
如何将 StructureMap 配置为始终IPrincipal
向 SignalR 集线器所依赖的服务注入有效值?