我有一个类似于这个的JSON对象:
{
"customers": [
{
"id": 1,
"name": "bob",
"orders": [{"id": 1, "customerId": 1, "itemId": 6}]
},
{
"id": 2,
"name": "jane",
"orders": [{"id": 2, "customerId": 2, "itemId": 7}]
}
]
}
我想像这样查询它。
...odata/customers?$expand=orders&$filter=orders/any(order: order/itemId eq 6)
。并得到...
{
"customers": [
{
"id": 1,
"name": "bob",
"orders": [{"id": 1, "customerId": 1, "itemId": 6}]
},
{
"id": 2,
"name": "jane",
"orders": []
}
]
}
但我得到的是...
{
"customers": [
{
"id": 1,
"name": "bob",
"orders": [{"id": 1, "customerId": 1, "itemId": 6}]
}
]
}
我想获得所有客户,我只希望过滤器应用于"订单"。
我该怎么做才能得到这个结果?
刚刚遇到了同样的问题!通过在 any(( 中按相同条件过滤我的扩展来解决。
applications?$expand=accounts($filter=idUser eq 5)&$filter=accounts/any(account: account/idUser eq 5)
也许迟到了,但希望它能帮助其他人;)