2014-09-04 5 views
1

Это связано с недавно запущенной службой поиска Azure, которая в настоящее время находится в форме предварительного просмотра. Я пытаюсь выяснить, как использовать фильтр OData с коллекциями. Я знаю, что я могу это сделать:Фильтр и коллекции в OData

$filter=Products/any(p: p eq 'WidgetA') 

, который будет фильтровать коллекцию продуктов WidgetA. Я пытаюсь выяснить, как указать WidgetA OR WidgetB. Я знаю, что могу это сделать:

$filter=Products/any(p: p eq 'WidgetA') or Products/any(p: p eq 'WidgetB') 

но думал, что должен быть более элегантный или более короткий способ сделать это.

ответ

1

К сожалению, нет, насколько я знаю. Оператор, который обращается к вашему требованию не «в», но нет в протоколе: http://docs.oasis-open.org/odata/odata/v4.0/os/part2-url-conventions/odata-v4.0-os-part2-url-conventions.html

еще одно: там должно быть свойство следует переменному диапазон:

http://host/service/Orders?$filter=Items/any(d:d/Quantity gt 100) 

в вашем случае это должно быть «p/Name eq« WidgetA »или некоторые другие свойства.

Смежные вопросы