我正在使用启用OData的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 来解决区分大小写的问题吗?
答案 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
你可以从夜间构建中获取二进制文件。