在MVC中,我只需要实现DefaultControllerFactory接口的NinjectControllerFactory类,然后在其中执行一些绑定。最后在全球我运行它:
ControllerBuilder.Current.SetControllerFactory(new NinjectControllerFactory());
但是如何在ASP.NET Web API中使用Ninject?有一些网络上的信息,但是已经过期,并且预发布的版本。
这个问题有直接的方法吗?
解决方法
很多文章很旧的原因是因为2012年6月以来的方法没有改变(RC发布5月31日)。您需要添加Ninject MVC3 Nuget软件包,然后实现“IDepenencyResolver”,然后注册您的实现。
最好的两个步骤是:
> http://www.strathweb.com/2012/05/using-ninject-with-the-latest-asp-net-web-api-source/
> http://www.peterprovost.org/blog/2012/06/19/adding-ninject-to-web-api/