2013-12-01 3 views
0

Я новичок в odata и WebApi. Я пытаюсь отправить следующий OData запрос: $ фильтр = ExternalIds эквалайзер «5»ошибка odata - обнаружен оператор с несовместимыми типами

ExternalIds является частью объекта и определяют как:


public Id ExternalIds { get; set; }

public class Id { [DataMember] public string Name { get; set; } [DataMember] public string Value { get; set; } }

Я получаю ошибку : «Был обнаружен двоичный оператор с несовместимыми типами. Найденные типы операндов« GenericAPIInterface.Entities.User.Id »и« Edm.String »для типа оператора« Equal »».

ответ

0

Для использования значений свойств в соответствующем классе вам потребуется использовать синтаксис навигации в пределах $filter, например. ...?$filter=ExternalIds/Value eq '5'. Кроме того, если ExternalIds является объектом (имеет собственный идентификатор), вы можете его расширить, используя $expand. Однако это не является строго необходимым условием работы фильтра.

0

Я думаю, я просто была такая же проблема - оказалось, что я использовал запрос Id эк «5» в то время как оно должно было быть Id экв 5 так unquoting в основном помогло.

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