为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 C# 中解析 OData $filter

如何在 C# 中解析 OData $filter

C#
哈士奇WWW 2021-09-19 18:42:01
操作 odata 过滤器如何在后端操作过滤器并想要过滤器查询参数的键值对?表达式如下"?$filter =((Name eq 'John' or Name eq 'Grace Paul') and (Department eq 'Finance and Accounting'))"由于连接了 2 个过滤器,我如何获得类似的值Filter 1:    Key: Name    Operator: eq    Value: NameOperator: orFilter 2:    Key: Name    Operator: eq    Value: Grace PaulOperator: andFilter 3:    Key: Department    Operator: eq    Value: Finance and Accounting我试过ODataUriParser,但它似乎不支持 ASP.NET core 2.1 web api。正则表达式- 使用这个堆栈溢出问题,在我的情况下它似乎不起作用,因为我的第三个过滤器包含和值 & 所以正则表达式失败。方法中的ODataQueryOptions,但它提供了无法提取的原始文本,如提到的键值对。我正在使用ASP.NET Core 2.1 Web API 与 OData v4集成有没有办法实现上面的内容?
查看完整描述

2 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

我知道这不是解决方案,而是与您分享以防万一以后对您有所帮助。这是为了匹配 ':' 右侧的所有值

/(?<=: )[\w ]+/gm


查看完整回答
反对 回复 2021-09-19
  • 2 回答
  • 0 关注
  • 322 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信