c# - 在 OData 过滤器中缩短或省略枚举的命名空间

标签 c# odata

我看了一下[Tutorial & Sample] Use Enumeration types in OData了解如何使用枚举过滤 OData 返回的数据。我正在使用的数据模型有一个很长的命名空间,如果能够使用更短的东西就好了,而不是

Organization.Office.Project.DomainObjects.Enumerations.MyEnumeration'MyValue'

如果能够执行 MyEnumeration'MyValue' 就好了。 我该怎么做?我尝试设置 ODataConventionModelBuilderNamespace 属性,但没有任何效果。

最佳答案

Web API OData 支持免费的枚举前缀。我想这就是您要找的。

启用enum prefix free后,可以直接使用enum值,例如, 'MyValue'

以下是如何免费启用枚举前缀的示例代码。 http://odata.github.io/WebApi/#06-01-custom-url-parsing

OData团队提供的相应端到端测试用例如下:

https://github.com/OData/WebApi/blob/master/OData/test/E2ETest/WebStack.QA.Test.OData/UriParserExtension/EnumPrefixFreeTest.cs

下面是关于 Uri 解析器扩展的更详细的介绍。 http://blogs.msdn.com/b/odatateam/archive/2014/09/12/tutorial-amp-sample-odatauriparser-extension-support.aspx

谢谢

关于c# - 在 OData 过滤器中缩短或省略枚举的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31037019/

相关文章:

c# - 以编程方式向验证器添加属性

c# - 部署 C# + Linq 控制台应用程序?

c# - ASP.NET Core 3.1 OData PageResult 序列化

c# - 使用 oData 忽略 POST 中的 JSON 属性

c# - WCF 多重绑定(bind)

c# - WCF 服务器端异步调用

c# - 带有枚举参数的方法的 Web API 帮助页面

c# - ASP.NET Web Api OData v4 - 如何通过 $metadata 反射(reflect)小数位数和精度?

javascript - 检测到具有不兼容类型的二元运算符。为运算符种类 'Edm.Guid' 找到操作数类型 'Edm.String' 和 'Equal'

odata - 什么是 Swagger,它与 OData 有关系吗?