c# - WebAPI OData 无法加载 microsoft.data.odata 版本=5.6.0.0

标签 c# asp.net-web-api nuget

当我使用 VisualStudio 2013 构造 Asp.Net WebAPI 时,添加

Web API 2 OData Controller with actions using Entity FrameWork

enter image description here

添加成功后,我运行API,然后出现错误:

Could not load file or assembly 'Microsoft.Data.OData, Version=5.6.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)

如何解决?

最佳答案

我尝试了很久,似乎找到了解决办法:

<强>1。打开“工具”>“库包管理器”>“管理解决方案的 Nuget 包”

并搜索单词“data”显示:

enter image description here

<强>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

<强>3。因此,现在管理它并取消选中所有项目来卸载它,,但您会遇到错误 Microsoft.AspNet.WebApi.OData 5.0.0 依赖于它,因此您应该首先卸载 Microsoft.AspNet.WebApi.OData 5.0.0

enter image description here

<强>4。然后卸载其他三个包,它们的id是:

.

Microsoft.Data.OData
Microsoft.Data.Edm
System.Spatial

enter image description here

<强>5。重新安装 Microsoft.Data.OData -版本 5.6.0

https://www.nuget.org/packages/Microsoft.Data.OData/5.6.0

使用包管理器控制台

Install-Package Microsoft.Data.OData -Version 5.6.0

然后三橙将重新安装5.6.0.0版本

enter image description here

<强>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

关于c# - WebAPI OData 无法加载 microsoft.data.odata 版本=5.6.0.0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38987468/

相关文章:

c# - ObservableCollection设置后不返回新数据

c# - 尝试在 dapper 查询中映射多个对象时出现错误

c# - 避免特定方法的 CamelCasePropertyNamesContractResolver

visual-studio - Nuget 在构建期间更新包,即使配置为不更新包

c# - 无法安装 NuGet 包

asp.net-core - 成功发布 dotnet 后软件包丢失

c# - 使用 protobuf-net 序列化 [Flags] 枚举时出现 InvalidOperationException

c# - 限制 MSMQ 消息/优先处理消息

asp.net - 向 ASP.NET Web API Controller 发送多部分/混合 http 请求

asp.net-web-api - 如何在ASP.NET MVC Web API中创建角色并将用户添加到角色