Фильтр OData по свойству массива для возврата пустого массива или массива - PullRequest
0 голосов
/ 02 апреля 2019

У меня есть объект 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}]
    }
  ]
}

Я хочу получить всех клиентов и хочу, чтобы фильтр применялся только к "заказам".

Что я могу сделать, чтобы получить этот результат?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...