当我使用VisualStudio 2013构建Asp.Net WebAPI时,添加
Web API 2 OData Controller,其中包含使用Entity FrameWork的操作
添加成功后,我运行API,然后发生错误:
无法加载文件或程序集' Microsoft.Data.OData,Version = 5.6.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)
如何解决?
答案 0 :(得分:4)
我花了很长时间尝试,似乎找到了解决方案:
<强> 1。打开工具&gt;库包管理器&gt;管理Nuget包以获得解决方案
并搜索&#34;数据&#34;所示:
<强> 2。如错误所示 Microsoft.Data.OData, Version=5.6.0.0" Could not load
,您可以在此处找到Microsoft.Data.OData
,名称为OdataLib for OData v1-3
,但其版本为5.6.3而不是5.6.0.0 < / p>
第3。因此,现在管理它并取消选中要卸载的所有项目,但是您将遇到错误Microsoft.AspNet.WebApi.OData 5.0.0 depends on it
,因此您应首先卸载Microsoft.AspNet.WebApi.OData 5.0.0
<强> 4。然后卸载其他三个软件包,其ID为:
Microsoft.Data.OData
Microsoft.Data.Edm
System.Spatial
<强> 5。重新安装 Microsoft.Data.OData -Version 5.6.0
https://www.nuget.org/packages/Microsoft.Data.OData/5.6.0
使用程序包管理器控制台
Install-Package Microsoft.Data.OData -Version 5.6.0
然后将使用ver 5.6.0.0
重新安装三个橙色 <强> 6。重新安装 Microsoft.AspNet.WebApi.OData 5.0.0
https://www.nuget.org/packages/Microsoft.AspNet.WebApi.OData/5.0.0
使用程序包管理器控制台
Install-Package Microsoft.AspNet.WebApi.OData -Version 5.0.0
<强> 7。然后我可以毫无错误地运行API