我正在开发一个 Web 应用程序,该应用程序将 Owin 托管用于 MVC 和 WebApi 2。
我最近将 Microsoft Mvc/WebApi 包从 5.2.2 版升级到 5.2.3 版,将 Owin 包从 3.0.0 版升级到 3.0.1,但这导致 Ninject 出现问题,版本为 3.2.3。
我将 Ninject.Web.WebApi 更新到 3.2.4 版并在编译错误后安装了 Ninject.Web.WebApi(也在 3.2.4 版),它无法识别 GlobalConfiguration。
这是编译的,但是当我运行它时,出现错误:
激活 HttpConfiguration 时出错
有多个匹配的绑定(bind)可用。
匹配绑定(bind):
1)从HttpConfiguration绑定(bind)到方法
2)从HttpConfiguration绑定(bind)到常量值
激活路径:
1) 请求 HttpConfiguration
建议:
1) 确保您只为 HttpConfiguration 定义了一次绑定(bind)。
我创建和添加 HttpConfiguration 的唯一地方是在 Owin 启动配置中,Configuration(IAppBuilder app)。
从那以后,我撤消了所有更改并尝试重新安装所有软件包。这次出现了无法保存GlobalConfiguration的错误,所以不知道更新包的时候有没有顺序依赖。 (我已经按照 release notes 的推荐安装了 Ninject.Web.WebApi,但我仍然收到有关 GlobalConfiguration 的编译错误。)
我查看了 Ninject.Web.WebApi.OwinHost 的依赖项,但看不到任何表明它不应该与 Microsoft.AspNet.WebApi 5.2.3 等或 Microsoft.Owin 3.0.1 等一起使用的内容。是否存在已知问题这?
任何帮助表示赞赏。
最佳答案
出现此错误的原因是 Ninject 包,但依赖于 Ninject 的 NuGet 包仍在使用旧版本。更新所有依赖于 Ninject 的 NuGet 包修复了这个问题。
关于asp.net-web-api - 更新到 Microsoft.AspNet.WebApi 5.2.3 和 Ninject.Web.WebApi.OwinHost 3.2.4 后未找到 GlobalConfiguration,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29307950/