示例#1
0
 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);
     }
 }
示例#2
0
        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);
        }