Ninject注入属性不起作用的属性

时间:2013-03-30 06:00:21

标签: asp.net-mvc dependency-injection ninject

我在自定义角色提供程序中使用属性注入,如下所示:

public class MyRoleProvider : RoleProvider
{
    [Inject]
    public IRoleRepository RoleRepository { get; set; }
    ...
}

我的ninject模块:

public class MyNinjectModule : NinjectModule
{
    public override void Load()
    {
        Bind<IRoleRepository>().To<RoleRepository>();
    }
}

但是当我尝试在MyRoleProvider中使用RoleRepository属性时,它始终为null。为什么ninject没有将RoleRepository实例注入属性?

1 个答案:

答案 0 :(得分:0)

尝试进行构造函数注入,看看是否有同样的问题。有时,使用注入对象时不会及时注入属性。

public class MyRoleProvider:RoleProvider
{
    public MyRoleProvider(IRoleRepository repository)
    {
        //set class level var or property to repository
    }
    ...
}