GET запрос через ODATA по колонке c ID

Добрый день!

Необходимо получить список обращений с фильтрацией по колонке Status. Но поскольку это поле не заполнено, беру колонку StatusId в которой указаны справочные ID статусов обращения.

Отправляю запрос в следующем виде:

https://mysite/0/odata/Case?$filter=StatusId eq guid'7e9f1204-f46b-1410-fb9a-0050ba5d6c38'

получаю ответ:

{
    "error": {
        "code": "",
        "message": "The query specified in the URI is not valid. Unrecognized 'Edm.String' literal 'guid'7e9f1204-f46b-1410-fb9a-0050ba5d6c38'' at '12' in 'StatusId eq guid'7e9f1204-f46b-1410-fb9a-0050ba5d6c38''."
    }
}

 

Какие комбинации я только не пробовал:

https://mysite/0/odata/Case?$filter=StatusId/Id eq guid'7e9f1204-f46b-1410-fb9a-0050ba5d6c38'

https://mysite/0/odata/Case?$filter=StatusId eq guid'7e9f1204-f46b-1410-fb9a-0050ba5d6c38'

https://mysite/0/odata/Case?$filter=StatusId eq '7e9f1204-f46b-1410-fb9a-0050ba5d6c38'

и т.д. - результат один и тот же - ошибка 400

 

При этом если я делаю запрос по колонке с данными типа string - запрос отрабатывает корректно и возвращает ответ 200, например так:

https://mysite/0/odata/Case?$filter=Number eq 'SR00000262'

 

Что я делаю не так?

Нравится

2 комментария
Лучший ответ

Должно работать так:

https://mysite/0/odata/Case?$filter=Status/Id eq 7e9f1204-f46b-1410-fb9a-0050ba5d6c38

 

Должно работать так:

https://mysite/0/odata/Case?$filter=Status/Id eq 7e9f1204-f46b-1410-fb9a-0050ba5d6c38

 

Спасибо, теперь ответ приходит корректный.

Показать все комментарии