在nuget中与WEB API集成的所有Ninject包都是什么?

Ern*_*sto 8 ninject asp.net-web-api asp.net-mvc-5 asp.net-web-api2

我正在使用Ninject(MVC5 + WEBAPI)构建应用程序.并且有一些问题可以找出许多答案中的哪些答案解释了集成Ninject和WebApi的最新解决方案.所以我安装了以下软件包:

  • Ninject
  • WebApi2的Ninject集成
  • Ninject.MVC5
  • Ninject.Web.Common
  • Ninject.Web.Common.WebHost

有人建议我的初始问题(Ninject不解析API控制器实例化)应该通过以下任一方法解决:

  • 安装另一个包(Ninject.Web.WebApi-RC,Ninject.WebAPI等)
  • 创建我自己的依赖项解析器
  • 安装Ninject Owin主机
  • 混合上述任何一种,希望它最终有效.

所以它归结为,所有这些包都是什么?另外,我需要使用Owin托管吗?我从nuget控制台得到一个'无法找到包Ninject.Web.WebApi'消息,所以我假设这个消息不存在了吗?

谢谢.

Pha*_*lon 9

Ninject使用Web API 2需要几个软件包:

  • Ninject(基础库)
  • Ninject.Web.Common
  • Ninject.Web.Common.WebHost
  • Ninject.Web.WebApi.WebHost("WebApi 2的Ninject Web主机")
  • Ninject.Web.WebApi("WebApi 2的Ninject集成")

安装完所有这些后,您将在App_Start文件夹中找到预构建的NinjectWebCommon类.只需将绑定添加到RegisterServices()方法即可.