Odata фильтр открытого типа

Попытка использовать фильтр OData в WebApi 2.

Но, похоже, он не работает над открытым типом (динамические свойства).

Ошибка получения:

Проверка OData QueryNode типа CollectionOpenPropertyAccess не поддерживается FilterQueryValidator.

Сервер возвращает массив объектов, который включает Id и Properties , а в свойствах у меня есть свойство, содержащее массив строк. Я хочу сделать фильтр по этому массиву. Я уверен, что мой URL-адрес запроса в порядке, потому что он работает с обычными данными. Я думаю, что проблема в открытом типе. Я обнаружил, что этот вопрос очень похож: https://stackoverflow.com/questions/33427594/filter-by-datetime-with-odata-in-dictionary/33442032, но нет ответа?

Использование: Odata v4 и WebApi2

Пример результата сервера:

{
    "Id": 1,
    "[email protected]": "#Collection(String)",
    "Context": [
        "Context1", "Context2"
    ]
}

Пример http-запроса:

http://localhost/API/odata/GetItems(id=30045)?$count=true&$filter=Context%2Fany(c:+c+eq+%27Context1%27)&$format=json&$top=5

person Harry Birimirski    schedule 13.06.2016    source источник


Ответы (1)


На данный момент это не поддерживается. Откройте проблему для отслеживания.

https://github.com/OData/WebApi/issues/770

person Fan Ouyang    schedule 06.07.2016