我已将NuGet包:Ninject.Web.WebApi.WebHost添加到我的ASP.NET Web API项目中,但是,一旦我添加了所有的DI绑定,我收到以下错误消息:
激活HttpConfiguration时出错多个匹配的绑定可用。匹配绑定:
1)从HttpConfiguration绑定到方法
2)从HttpConfiguration绑定到方法
激活路径:1)请求HttpConfiguration
建议:1)确保您已为其定义了绑定 HttpConfiguration只有一次。
这些是与Ninject.Web.WebAPI.WebHost一起添加的NuGet包:
我不知道如何解决这个问题,因为我能够在以前的项目中使用它,但是这个项目似乎无论出于何种原因都没有工作。
对于所有这些版本的程序集,我也经常遇到此错误消息:
确保控制器具有无参数的公共构造函数
有时我能够使用旧版本的Ninject程序集正确构建项目,但我经常收到错误消息:
序列不包含任何元素。
我发现解决此错误的唯一方法是删除bin目录并重新构建,但我不明白为什么我不断删除bin目录以使Ninject每次都正常工作。
请告知如何让Ninject与Web API v.2.2一起正常使用
答案 0 :(得分:0)
我通过here找到了解决方法。
简而言之,解决方案是将所有Ninject包都放到同一版本中。 HttpConfiguration的东西很乱,如果你有不同版本的不同Ninject包,它可以存在于多个地方。将所有内容升级到同一版本应解决此问题。