【发布时间】:2010-05-14 08:21:31
【问题描述】:
我是否需要在抽象类中做一些不同的事情才能让依赖注入与 Ninject 一起工作?
我有一个带有以下代码的基本控制器:
public abstract class BaseController : Controller
{
public IAccountRepository AccountRepository
{
get;
set;
}
}
我的模块如下所示:
public class WebDependencyModule : NinjectModule
{
public override void Load()
{
Bind<IAccountRepository>().To<AccountRepository>();
}
}
这是我的Global.asax:
protected override void OnApplicationStarted()
{
Kernel.Load(new WebDependencyModule());
}
protected override IKernel CreateKernel()
{
return new StandardKernel();
}
当我用[Inject] 属性装饰IAccountRepository 属性时,它可以工作。
【问题讨论】:
-
稍微编辑了答案-希望现在总体情况很清楚-如果这没有意义,请随时在 cmets 中跟进。顺便说一句,一定要下载 Ninject 的源代码——它是这个星球上最好的关于 Ninject 答案的地方。测试是一组很好的答案。
-
啊,这是个好主意。肯定会检查源代码。谢谢!
标签: c# asp.net-mvc ninject ninject-2