无法加载文件或程序集';System.Web.Http,版本=5.2.2.0
本文关键字:Http 版本 Web System 文件 加载 程序集 | 更新日期: 2023-09-27 18:00:54
我将Odata v4包添加到我的API中,我注意到它将我的Microsoft.AspNet.WebApi包更新为5.2.3版本。但是当我尝试使用时
odata构建器在我的WebApiConfig中的配置显示错误'无法加载文件或程序集'System.Web.Http,Version=5.2.20'.
config.MapODataServiceRoute("odata", null, GetEdmModel(), new DefaultODataBatchHandler(GlobalConfiguration.DefaultServer));
我在我的项目中搜索了这个版本(5.2.2(,但每件事都是5.2.3,我也更新了所有的包来解决这个问题,但失败了。对于System.Web.Http dll,Copy to Local属性也为true
知道吗?
https://msdn.microsoft.com/en-us/library/2fc472t2.aspx
解决我问题的绑定重定向是,
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31BF3856AD364E35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
</assemblyBinding>
这不是"真正的"解决方案,而是一种变通方法:我已经更改了machine.config并用替换了<runtime />
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
所以我工作,但如果你有其他网站运行。。。