【发布时间】:2015-10-01 23:23:47
【问题描述】:
我已经在我的 WebAPI 项目中设置了 Unity,并且在我的一个 ApiController 中使用 DependencyAttribute 时,我可以正确注入对象。我现在尝试在 ActionFilterAttribute 中使用完全相同的方法,但它没有解析(解析为 null)。
这将解析为 null:
public class ValidateEntryAttribute : ActionFilterAttribute
{
[Dependency]
internal ApplicationUserManager UserManager { get; set; }
// ...
}
这里解析为对象的一个实例:
public class LayoutController : BaseApiController
{
[Dependency]
internal ApplicationUserManager UserManager { get; set; }
}
我的 UnityConfig 看起来像这样:
container.RegisterType<IUserStore<ApplicationUser, int>, ApplicationUserStore>();
container.RegisterType<ApplicationUserManager>();
我错过了什么?
【问题讨论】:
-
Unity 不能在属性中注入东西,改变你的方法。
标签: c# asp.net asp.net-web-api dependency-injection unity-container