【发布时间】:2019-01-21 19:47:15
【问题描述】:
我正在为 ASP.NET Core 创建一些授权策略,显然我已经创建了一些 AuthorizationHandlers。
现在,授权机制要求授权处理程序是可解析的。我使用的是 Autofac 而不是内置机制,所以这是我尝试实现它的方法:
builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly())
.AsClosedTypesOf(typeof(AuthorizationHandler<>))
.As<IAuthorizationHandler>()
.OnActivating(x => System.Diagnostics.Debug.WriteLine(x.Instance))
.AutoActivate();
我的理解是:
- 我从正在执行的程序集(我的处理程序所在的位置)注册类型
- 继承自 AuthorizationHandler
- 将它们注册为 IAuthorizationHandler。
为了调试,我添加了 OnActivating 和 AutoActivate 事件。如您所见,当有激活时我正在记录。
但我的日志记录甚至没有执行一次。 Autofac 似乎无法找到我的授权处理程序。如何解决?
【问题讨论】:
标签: asp.net asp.net-core asp.net-core-2.0 autofac