本文整理汇总了C#中Ruleset.GetRule方法的典型用法代码示例。如果您正苦于以下问题:C# Ruleset.GetRule方法的具体用法?C# Ruleset.GetRule怎么用?C# Ruleset.GetRule使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Ruleset
的用法示例。
在下文中一共展示了Ruleset.GetRule方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Execute
protected bool Execute(Ruleset rs, Rule r)
{
log.Debug("Evaluating {0}.{1}", rs.Name, r.Id);
if (r.When())
{
if (r.SideEffect != null)
{
r.SideEffect();
}
Rule r1 = rs.GetRule(r.TrueGoto);
if (r1 != null)
{
log.Debug("Rule {0}.{1} true, checking exception {2}.{3}", rs.Name, r.Id, rs.Name, r1.Id);
bool b = Execute(rs, r1);
if (b)
{
log.Debug("Exception {0}.{1} to rule {2}.{3} resulted in action - rule {2}.{3} not fired.", rs.Name, r1.Id, rs.Name, r.Id);
return true;
}
}
log.Debug("Executing final action [{0}.{1}]", rs.Name,r.Id);
if (r.Then != null)
{
r.Then();
}
return true;
}
else
{
log.Debug("Rule {0}.{1} is false", rs.Name, r.Id);
Rule r2 = rs.GetRule(r.FalseGoto);
if (r2 != null)
{
return Execute(rs, r2);
}
return false;
}
}