USERS集合包含USERGROUPS导航属性。
用户通过/api/Users?$expand=USERGROUPS访问。
USERGROUPS导航属性包含ID,我想按UserGroups.Id进行筛选,如下所示:
/api/Users?$expand=USERGROUPS&$filter=startswith(USERGROUPS/ID,'a')
最终,我希望能够根据特定的组ID值进行过滤。
谢谢。
发布于 2013-08-07 07:16:44
实际上,OData V3通过any/all运算符支持类似的操作。因此,例如,如果您想搜索属于id为'a‘的用户组的所有用户,则查询将如下所示:
/api/Users?$filter=USERGROUPS/any(usergroup: usergroup/ID eq 'a')但请注意,该功能仅在OData V3中受支持,因此您需要在服务器上启用该功能。
发布于 2013-08-07 03:45:48
--已编辑--
最初,我相信我找到了我的答案here:
OData不支持对属于集合的导航属性进行筛选
因为在我的数据集中,UserGroups是一个集合,所以不可能对这个属性执行筛选。
然而-使用上面给出的语法,以及OData v3的使用,这是非常好的!
https://stackoverflow.com/questions/18088938
复制相似问题