Microsoft.OData.Core和Microsoft.Data.OData之间的区别

时间:2015-01-19 07:20:41

标签: rest asp.net-web-api odata spatial

我正在使用启用OD​​ata的Web Api。我开始工作时指的是(只提到问题的相关dll

Microsoft.AspNet.WebApi.OData
Microsoft.Data.OData
Microsoft.Data.Edm
System.Spatial

但是当我发现 OData默认区分大小写时,我会寻找一个不区分大小写的解决方案,我已经通过了几篇帖子Support OData Uri case insensitive parse &安培; ODataLib 6.7.0 Release然后终于登陆了nuget package Microsoft.OData.Core 6.9.0,这似乎解决了我的问题。 我的混乱开始 ,它在不同的命名空间下有自己的集合相关库

Microsoft.OData.Core-----------VS------Microsoft.Data.OData
Microsoft.OData.Edm------------VS------Microsoft.Data.Edm
Microsoft.Spatial--------------VS------System.Spatial

上述类似的库之间有什么区别,我们应该相互使用?在我的类似情况下,可以使用 Microsoft.OData.Core 代替 Microsoft.Data.OData 来解决区分大小写的问题吗?

1 个答案:

答案 0 :(得分:11)

<强> 1。关于命名空间,


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

OData Version 3.0 Spec的实施。 Nuget上的软件包名称以 OData v1-3 结尾。例如:ODataLib for OData v1-3

虽然

Microsoft.OData.Core
Microsoft.OData.Edm
Microsoft.Spatial

OData Version 4.0 Spec的实施。 Nuget上的软件包名称不包含版本。例如:ODataLib

<强> 2。关于不区分大小写的


Web API OData将在5.4版本中支持不区分大小写,不合格的函数/动作调用和免费的Enum前缀。

Here's您可以参考的一个简单示例。

源代码移至: WebAPI OData on Github

你可以从夜间构建中获取二进制文件。