【发布时间】:2016-08-16 20:29:21
【问题描述】:
我正在尝试找出一种将依赖项注入到 SignalR 中的 AuthorizeAttribute 的方法,类似于在 WebAPI 中完成的方式。
在 Web API 中,我知道我可以调用 builder.RegisterWebApiFilterProvider(config);,但我似乎无法找到 SignalR 的等价物。我能找到的最接近它的方法是PropertiesAutowired() 方法。
我已经尝试builder.RegisterType<MyAuthorizationAttribute>.PropertiesAutowired(); 我的属性看起来像
public class MyAuthorizationAttribute : AuthorizeAttribute
{
public IRepository Repository { get; set; }
public override bool AuthorizeHubConnection(HubDescriptor hubDescriptor,
IRequest request)
{
Repository.QueryStoredProcedure("Test");
...
}
protected override bool UserAuthorized(IPrincipal user)
{
...
}
}
但是Repository的实例每次都是null。
【问题讨论】:
-
你能在你的集线器中注入依赖吗?
-
@Matei_Radu 是的。这按预期工作。
标签: .net dependency-injection attributes signalr autofac