我正在开发一个Web应用程序,它使用Owin托管MVC和WebApi 2。
我最近从版本5.2.2到版本5.2.3的Microsoft Mvc / WebApi软件包,以及版本3.0.0到3.0.1的Owin软件包,但这导致了Ninject的问题,即3.2.3。
我将Ninject.Web.WebApi更新为版本3.2.4,并在编译错误后安装了Ninject.Web.WebApi(也是版本3.2.4),因为它无法识别GlobalConfiguration。
这已编译,但当我运行它时,我收到了错误:
激活HttpConfiguration时出错 可以使用多个匹配的绑定。 匹配绑定: 1)从HttpConfiguration绑定到方法 2)从HttpConfiguration绑定到常量值 激活路径: 1)请求HttpConfiguration 建议: 1)确保您只为HttpConfiguration定义了一次绑定。
我创建和添加HttpConfiguration的唯一地方是Owin Startup配置,配置(IAppBuilder应用程序)。
我已撤消所有更改并尝试重新安装所有软件包。这次我遇到无法保存GlobalConfiguration的错误,所以在更新软件包时我不知道是否存在订单依赖。 (我已根据release notes的建议安装了Ninject.Web.WebApi,但我仍然收到有关GlobalConfiguration的编译错误。)
我查看了Ninject.Web.WebApi.OwinHost的依赖项,看不到任何暗示它不适用于Microsoft.AspNet.WebApi 5.2.3等或Microsoft.Owin 3.0.1等的内容。是否有已知的问题?
任何帮助表示感谢。
答案 0 :(得分:4)
之所以给出错误,是因为Ninject包,但依赖于Ninject的NuGet包仍在使用旧版本。更新依赖于Ninject的所有NuGet包修复了这个问题。