MS CRM QueryExpression Условие Expression W / CRMBoolean тип - PullRequest
2 голосов
/ 02 мая 2011

Я использую программное обеспечение Microsoft CRM (4.0) и пытаюсь создать выражение запроса.Он отлично работает с запросом только значений String, но теперь мне нужно включить поле типа CRMBoolean.Я должен также упомянуть, что я запрашиваю пользовательские объекты.

Итак, ранее в моем запросе я искал только по нескольким полям, но все они были типа String.Теперь мне нужно добавить еще одно выражение для выражения CRMBoolean.Тип пользовательского объекта, который я ищу, имеет поле с именем «Condition», которое может иметь значение «true» или «false».В CRM атрибут определен как бит, но я не думал, что это будет иметь значение.

Вот мой код, который я пытаюсь использовать, чтобы найти записи, которые имеют условие «true»:

oCondition = New ConditionExpression()
oCondition.AttributeName = "myEntity_condition"
oCondition.Operator = ConditionOperator.Like

Dim bool As New CrmBoolean
bool.Value = True
oCondition.Values = New Object() {bool}

listConditions.Add(oCondition)

Я не получаю ошибку, но на самом деле ничего не происходит.Количество возвращаемых записей никогда не меняется так или иначе.Кто-нибудь делал это раньше?

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 02 мая 2011

Вместо того, чтобы помещать объект CrmBoolean в массив oCondition.Values, просто поместите обычный логический тип true / false. Я также согласен с benjynito, изменив его на ConditionOperator.Equals вместо Like.

2 голосов
/ 02 мая 2011

Я не знаю, как предполагается, что оператор like ведет себя как логическое значение. Интересно, если это игнорируется. Попробуйте ConditionOperator.Equal.

...