OData 4 применить фильтр к свойству навигации - PullRequest
0 голосов
/ 17 октября 2018

Я пытаюсь применить фильтр к свойству навигации.Это представляется возможным в соответствии с этой документацией http://docs.oasis -open.org / odata / odata / v4.01 / cs01 / part2-url-конвенции / odata-v4.01-cs01-part2-url-конвенции.html # _Toc505773298

Пример 121: выберите до пяти адресов, чей город начинается с H, отсортировано и с расширенной страной

http://host/service/Customers?$select=Addresses($filter=startswith(City,'H');$top=5;$orderby=Country/Name,City,Street;$expand=Country)

Это, кажется, применяет фильтр, top и т. Д. К свойству «Навигация по адресу», и это именно то, что я хочу сделать.

Использование services.data.org Тестовый сайт Я пытался создатьзапрос для репликации этого

https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$select=CustomerID,Orders&$expand=Orders

Это прекрасно работает, но на одного клиента могут приходить миллионы заказов.Поэтому я хочу отфильтровать верхнее свойство навигации.Но когда я пытаюсь что-то подобное

https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$select=CustomerID,Orders($top=10)&$expand=Orders

, я получаю сообщение об ошибке

"message": "Term" CustomerID, Orders ($ top = 10)'недопустимо в выражении $ select или $ expand. "

Что я делаю неправильно.Это я что-то упустил или этот сайт на самом деле не придерживается правил OData v4 ??

Большое спасибо

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