【发布时间】:2017-01-01 02:34:27
【问题描述】:
我已将 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 v. 3.2.2
- Ninject.Web.Common v. 3.2.3
- Ninject.Web.Common.WebHost v. 3.2.3
- Ninject.Web.WebApi v. 3.2.4
- Ninject.Web.WebApi.WebHost v. 3.2.4
我不知道如何解决这个问题,因为我能够让它在以前的项目中运行,但这个项目似乎不管出于何种原因都无法运行。
我也经常在所有这些版本的程序集中遇到此错误消息:
确保控制器有一个无参数的公共构造函数
有时我可以使用旧版本的 Ninject 程序集正确构建项目,但我经常收到错误消息:
序列不包含任何元素。
我发现解决此错误的唯一方法是删除 bin 目录并重新构建,但我不明白为什么我每次都必须删除 bin 目录才能让 Ninject 正常工作。
请告知如何让 Ninject 与 Web API v.2.2 一起正常工作
【问题讨论】:
-
你有没有想过这个问题。在我的 ninject 中,有一次我看到了两个 HttpConfiguration 实例。