我正在使用启用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包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.关于命名空间,
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
是0700的实现.Nuget上的包名不包含版本.例如:ODataLib
2.关于不区分大小写的
Web API OData将在5.4版本中支持不区分大小写,不合格的函数/动作调用和免费的Enum前缀.
Here’s你可以参考一个简单的例子.