是否可以限制或过滤oData V2中的扩展项目?

问题描述

我已经用olingo V2和spring boot制作了一个oData服务器!

如果我打这样的电话:

http://localhost:9090/odata.svc/FormSet?$expand=Questions&$filter=Questions/Deleted eq false

这将返回所有至少具有一个Forms,其Question属性Deleted的{​​{1}}。

但是,我想要所有表格的列表以及所有尚未删除的问题的列表。但是此查询将返回属于表单的所有问题。

从逻辑上讲这是真的。因为我请求的是表单列表而不是问题列表,因此,将根据表单而不是扩展实体来评估过滤器!尽管过滤器会影响父实体!

现在假设我有一个表格,其所有问题都已删除,并且它们的false标志已经设置为true!然后,此查询不会将该表格返回给我。为什么?因为它没有带有Deleted的{​​{1}}标志的问题!

我为什么需要它?我想减少通话次数

假设我有一张瓷砖清单。每个图块都显示其未删除问题的形式和数量!例如,如果我有一个名称Deleted的表格,其中有4个问题已被删除,则我必须显示以下内容

enter image description here

但是,目前它显示4个错误,我希望看到3个!

有什么方法可以对扩展元素进行过滤,从而过滤扩展元素而不应用于父元素。

请注意,我并不是在寻找编程解决方案,我更是在徘徊oData过滤语法是否有可能!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)