В настоящее время я сталкиваюсь с некоторыми проблемами при обращении к службам oData. Я очень новичок в синтаксисе запроса oData.
Я пытаюсь запросить службу OData используя следующий URL
https://mysite/DataQueryGroups? $ Выберите = Id, имя & $ фильтр = IsHidden Эквалайзер False & IsShared пе ложных & $ расширения = DataQueries ($ выберите = Id, Name , IsPinned;)
, который возвращает желаемые результаты мне. Выше запроса в основном возвращает все DataQueryGroups, где IsHidden = false и IsShared <> false, включая его дочерний объект DataQueries. Теперь я хочу добавить фильтр в список объектов DataQueries, чтобы отображать только те результаты, где IsPinned = true. Таким образом, я попытался следующий запрос
https://mysite/DataQueryGroups $ выберите = Id, имя & $ фильтр = IsHidden Эквалайзер False & IsShared пе ложных & $ расширения = DataQueries ($ выберите = Id, Name, IsPinned;? $ Фильтр = IsPinned эквалайзером true;)
Но это возвращает мне те же результаты, и похоже, что он не рассматривает внутренний фильтр/последний фильтр, который я указал в объекте DataQueries.
Я хотел бы знать, как фильтровать родительские и дочерние сущности и возвращать поля из обоих.
В этом синтаксисе я затрудняюсь. Пожалуйста, дайте мне знать, если кто-нибудь может помочь мне в этом вопросе.
Я использую OData версии 4.0
Благодарим Вас заранее Дипак
Благодарим вас за изучение этой проблемы. Я попытался использовать код в примере проекта после добавления ссылки на последнюю службу oData 6.11.0. Но я получаю ошибку компиляции в GroupController, говоря, что «пространство имен ODataController не найдено». Есть ли что-то еще, что мне не хватает, или я могу загрузить полный образец проекта. – Deepak
В настоящее время я использую oData version 6.11.0.0. Я могу создать проект после создания нового проекта и добавления отсутствующих пакетов NuGet. Не могли бы вы дать мне синтаксис запроса, который вы использовали для запуска. Я не уверен, что нужно добавить в файл WebApiConfig.cs. Благодарю вас – Deepak