WebAPI 2项目有几个Ninject包。
套餐编号1:Ninject.Web.WebApi
这个只是添加了这些参考文献
未添加任何代码文件。例如,Ninject注入适用于ApiControllers作为构造函数注入。目前还不清楚在哪里添加要加载到内核中的模块,但它有效。
套餐编号2:Ninject.Web.WebApi.WebHost 添加相同的引用集和NinjectWebCommons.cs,这是一个标准的WebActivator钩子,它将IoC注入到应用程序操作中,并为内核添加模块,也适用于WebAPI 2 VS模板。
套餐编号3:Ninject.Web.WebApi.OwinHost 这个添加了更多的参考文献:
包的文档建议通过这样的调用注入Ninject:
app.UseNinjectMiddleware(CreateKernel).UseNinjectWebApi(webApiConfiguration);
还可以在WebAPI 2模板中注入依赖项,并提供配置IoC的位置。
这三个包(基本包)之间有什么区别。如果可以应用此类标准,则将Ninject链接到Web应用程序的哪种方式是首选方式。
谢谢。