【问题标题】:Missing DependencyResolver in System.Web.Http 5.2.2System.Web.Http 5.2.2 中缺少 DependencyResolver
【发布时间】:2014-11-13 17:13:14
【问题描述】:

我们的项目正在使用 asp.Net Web Api 和我们的部分要求,以使用户能够通过 Excel 查看数据,我们想引入 OData Feed。

所以我安装了 oData 包:

<package id="Microsoft.AspNet.WebApi.OData" version="5.3.0" targetFramework="net45" />

通过这样做升级了以下软件包:

-  <package id="Microsoft.AspNet.WebApi.Client" version="5.2.0" targetFramework="net45" />
-  <package id="Microsoft.AspNet.WebApi.Core" version="5.2.0" targetFramework="net45" />
+  <package id="Microsoft.AspNet.WebApi.Client" version="5.2.2" targetFramework="net45" />
+  <package id="Microsoft.AspNet.WebApi.Core" version="5.2.2" targetFramework="net45" />
-  <package id="Newtonsoft.Json" version="5.0.6" targetFramework="net45" />
+  <package id="Newtonsoft.Json" version="6.0.4" targetFramework="net45" />

我稍微修改了我的 WebApiConfig 以添加 OData 路由(但我认为这无关紧要,我不提供代码的原因)。重建多次失败,所以我决定按照多篇博文中的建议重新启动 Visual Studio。

然后一切正常,我在项目上启动调试器。我得到以下异常:

An exception of type 'System.IO.FileLoadException' occurred in Ninject.Web.Common.dll but was not handled in user code

Additional information: Could not load file or assembly 'System.Web.Http, Version=5.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

然后我查看 Ninject 配置类,看到以下行:

GlobalConfiguration.Configuration.DependencyResolver = new NinjectDependencyResolver(kernel);

以红色显示“DependencyResolver”(即 Resharper)并表示它无法解决它。看看对象浏览器,确实找不到了。

所以基本上我将 Microsoft.AspNet.WebApi 从 5.2.0 升级到 5.2.2 并失去了 DependencyResolver 和与 Ninject 的兼容性。

你知道解决这个问题的方法吗?

【问题讨论】:

    标签: .net asp.net-web-api odata ninject.web.mvc


    【解决方案1】:

    好的,看来我找到了解决方案。

    ninject和aspnet的5.2.2完全不是不兼容

    问题是安装 oData 将一些 AspNet 包升级到 5.2.2 但忘记了其他一些包。 当我将所有 Microsoft.AspNet.WebApi* 包都安装到 5.2.2 时,问题就消失了。

    我希望这仍然可以帮助其他人......

    【讨论】:

    • 很高兴听到我能帮上忙 ;-)
    猜你喜欢
    • 2019-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-11
    • 2017-08-05
    • 2014-10-14
    • 2014-01-23
    • 1970-01-01
    相关资源
    最近更新 更多