问题描述
我有 250 条执行规则。今天,我按顺序在循环中一次评估它们 1。第一个评估为 true 的将停止循环。我保存了结果和使用的规则。
出于性能原因,我想使用规则集。有没有办法知道哪个规则(或取决于行为的规则)评估为真?也许是一个规则的数组?
解决方法
在源类中声明一个“状态”字段,并将其值设置为规则集中每个规则的规则评估结果。在您的规则集评估完成后检查该字段的值,以确定哪些规则评估为真:
[ExcludeFromEvaluation]
public string Output;
[Action("Output")]
public void SetOutput(string val)
{
this.Output += val;
}
规则示例:
If Something is True then Output ( "Something was true" ) and Do Something Amazing