예제 #1
0
        private static RuleBase AdaptRule(RuleTreeNodeDto node, RuleTreeNodeDto[] allNodes)
        {
            if (node.Data.Kind == RuleGroup.Kind)
            {
                return(new RuleGroup(node.Data.Id,
                                     GetRules(node, allNodes), GetMatchMode(node.Data.MatchMode)));
            }

            return(new Rule(node.Id, CreateCriteriaValue(node.Data.Criteria)));
        }
예제 #2
0
 private static RuleBase[] GetRules(RuleTreeNodeDto node, RuleTreeNodeDto[] allNodes)
 {
     return(node.Children.Select(x => GetNode(x, allNodes)).Select(x => AdaptRule(x, allNodes)).ToArray());
 }