public void AddEvaluator(string id, IRuleEvaluatorX <TModel> evaluator) { id = ConventionHelper.EnsureConvention(NamePrefixOptions.Evaluator, id, this.Configuration.Convention); if (!this.evaluators.ContainsKey(id)) { this.evaluators.Add(id, evaluator); } }
public IRuleEvaluatorX <TModel> GetRuleEvaluator(LogicDefine.Evaluator def) { LogicDefine.Evaluator withoutConvention = new LogicDefine.Evaluator() { Id = ConventionHelper.RemoveConvention(def.Id, this.Configuration.Convention), Description = def.Description }; IRuleEvaluatorX <TModel> toReturn = default(IRuleEvaluatorX <TModel>); if (this.evaluators.ContainsKey(withoutConvention.Id)) { toReturn = this.evaluators[withoutConvention.Id]; } else { toReturn = this.evaluators[def.Id]; } return(toReturn); }