我正在尝试使用我的自定义 UI 构建规则并使用 CodeDom 为我的工作流模块执行。我不想使用 WF 提供的规则界面。为了构建/执行规则,我正在创建一个条件和 ThenAction/ElseActions。目前我能够成功执行一个条件。意味着假设有一个订单实体,其中包含OrderID、Amount、NoOfItems、Discount 和 TotalAmount 等属性。
能够建立以下条件:
if (this.Amount > 1000)
thisDiscount = 100;
建筑左/右条件:
CodePropertyReferenceExpression technologyRef = new CodePropertyReferenceExpression(thisRef, " Amount");
CodePrimitiveExpression wfConstant = new CodePrimitiveExpression(1000);
// if ( this. Amount > 1000)
CodeBinaryOperatorExpression cond = new CodeBinaryOperatorExpression();
cond.Left = technologyRef;
cond.Operator = CodeBinaryOperatorType.GreaterThanOrEqual;
cond.Right = wfConstant;
Rule rule = new Rule("rule1");
rule.Condition = new RuleExpressionCondition(cond);
无法建立以下条件:
if (this.Amount > 1000 && NoOfItems > 5)
thisDiscount = 150;
谁能帮我为规则建立多个条件?表示在单个 IF 语句中对多个属性进行验证。