我在我的项目中使用BreezeApi NuGet包。它位于Visual Studio 2013中。
我收到此错误。
错误41程序集'Breeze.WebApi2,Version = 1.4.0.0,Culture = neutral,PublicKeyToken = f6085f1a45e2ac59'使用'System.Web.Http,Version = 5.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'高于引用程序集的版本'System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'
我不知道为什么我的项目会引用4.0版本。我试过的事情:
我从我的项目中删除了system.web.http 4.0的引用,并浏览到了5.0 DLL文件位置。一旦我添加它并返回到解决方案资源管理器,右键单击system.web.http dll,它显示4.0.0.0。
我在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" />
</dependentAssembly>
如何解决此问题?
答案 0 :(得分:14)
这就是我为解决与你的问题非常相似的问题所做的:
错误2汇编'Breeze.WebApi2,Version = 1.4.0.0,Culture = neutral, PublicKeyToken = f6085f1a45e2ac59'使用'System.Web.Http, Version = 5.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35' 它的版本高于引用的程序集'System.Web.Http, 版本= 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包管理器:
更新上面的NuGet包会将System.Web.Http
的版本设置为正确的版本,在本例中为5.1.0.0
。
答案 1 :(得分:1)
答案 2 :(得分:0)
我通过更新NuGet的所有包来解决这个问题。