我得到这个错误.
Error 41 Assembly ‘Breeze.WebApi2,Version=1.4.0.0,Culture=neutral,PublicKeyToken=f6085f1a45e2ac59’ uses ‘System.Web.Http,Version=5.0.0.0,PublicKeyToken=31bf3856ad364e35’ which has a higher version than referenced assembly ‘System.Web.Http,Version=4.0.0.0,PublicKeyToken=31bf3856ad364e35’
我不知道为什么我的项目不断参考4.0版本.
我试过的东西
1)我从我的项目中删除system.web.http 4.0的引用,并浏览到5.0 dll位置.一旦我添加并回到解决方案资源管理器,右键单击system.web.http dll,它显示4.0.0.0
2)我在web.config中添加了装配绑定,如下所示
<dependentAssembly> <assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-5.1.0.0" newVersion="5.1.0.0" />
有人可以帮我解决吗?谢谢
解决方法
Error 2 Assembly ‘Breeze.WebApi2,
PublicKeyToken=f6085f1a45e2ac59’ uses ‘System.Web.Http,
Version=5.1.0.0,PublicKeyToken=31bf3856ad364e35’
which has a higher version than referenced assembly ‘System.Web.Http,
Version=5.0.0.0,
PublicKeyToken=31bf3856ad364e35’ c:\Repos\SPACodeCamper\packages\Breeze.Server.WebApi2.1.4.12\lib\Breeze.WebApi2.dll CC.Web
在John Papa进行课程Building Apps with Angular and Breeze – Part 1时,我收到了这个错误.在将Breeze Web API控制器添加到CC.Web后,在步骤3.15发生.
要解决它,我们需要更新以下NuGet软件包.我在Visual Studio 2013中使用了NuGet软件包管理器:
> Microsoft.AspNet.WebApi.Client从5.0.0到5.1.2
> Microsoft.AspNet.WebApi.Core从5.0.0到5.1.2
> Microsoft.AspNet.WebApi.WebHost从5.0.0到5.1.2
> Microsoft.AspNet.WebApi.OData从5.0.0到5.1.2(这一个我不得不重新启动Visual Studio来完成安装)
以上更新NuGet软件包将会将System.Web.Http的版本与正确的版本相关,在这种情况下为5.1.0.0.