protected override void RunRules(RuleList <ConditionalRenderingsRuleContext> rules, ConditionalRenderingsRuleContext context) { Assert.ArgumentNotNull(rules, "rules"); Assert.ArgumentNotNull(context, "context"); if (!RenderingRuleEvaluatedPipeline.IsEmpty()) { rules.Evaluated += RulesEvaluatedHandler; rules.Applied += RulesAppliedHandler; } rules.RunFirstMatching(context); }
/// <summary> /// accept personalizationRuleList, evaluate conditions, /// </summary> /// <param name="rules"></param> /// <param name="context"></param> protected virtual void RunRules(PersonalizationRuleList <ConditionalRenderingsRuleContext> rules, ConditionalRenderingsRuleContext context) { Assert.ArgumentNotNull(rules, "rules"); Assert.ArgumentNotNull(context, "context"); if (!RenderingRuleEvaluatedPipeline.IsEmpty()) { rules.Evaluated += new RuleConditionEventHandler <ConditionalRenderingsRuleContext>(this.RulesEvaluatedHandler); } rules.RunFirstMatchingIgnoringTrackingExceptions(context); }
private void RulesEvaluatedHandler(RuleList <ConditionalRenderingsRuleContext> ruleList, ConditionalRenderingsRuleContext ruleContext, Rule <ConditionalRenderingsRuleContext> rule) { RenderingRuleEvaluatedArgs args = new RenderingRuleEvaluatedArgs(ruleList, ruleContext, rule); RenderingRuleEvaluatedPipeline.Run(args); }