如何在早期绑定状态码上为QueryExpression创建ConditionExpression?

时间:2013-08-17 19:13:03

标签: c# dynamics-crm-2011 query-expressions

在后期绑定中,我会使用类似的内容来添加仅获取活动记录的条件。

new ConditionExpression
{
  AttributeName = "statecode",
  Operator = ConditionOperator.NotEqual,
  Values = { SomeClass.Active }
}

但是我怎么在晚期表达呢?

另外,为什么MS demand to cast it to String代替 int

  

创建将属性值与枚举(例如状态代码)进行比较的条件时,必须使用ToString方法将值转换为字符串。

1 个答案:

答案 0 :(得分:6)

这样的东西
ConditionExpression condition1 = new Microsoft.Xrm.Sdk.Query.ConditionExpression
{
    AttributeName = "statecode",
    Operator = ConditionOperator.Equal,
    Values = { "Active" } //or SomeEnum.Active.ToString() if you want use good practice
};

应该可以正常工作。

编辑: 其他选项是将枚举转换为int:Values = {(int)SomeEnum.Active}