Пример #1
0
        private Expression <Func <T, bool> > AggregateGroups(Expression <Func <T, bool> > current,
                                                             ExpressionTuple <ExpressionGroup> g)
        {
            var currentPred = Parse(g.Predicate);

            return(current == null
                ? currentPred
                : _predicateBuilder.GetPredicateOnTwoExpressions(current, currentPred,
                                                                 g.Comparison ?? ComparisonEnum.And));
        }
Пример #2
0
        private Expression <Func <T, bool> > AggregateRules(Expression <Func <T, bool> > current,
                                                            ExpressionTuple <Rule> rule)
        {
            var currentPred =
                _predicateBuilder.GetPredicate(rule.Predicate.Field, rule.Predicate.Value, rule.Predicate.Operation);

            return(current == null
                ? currentPred
                : _predicateBuilder.GetPredicateOnTwoExpressions(current, currentPred,
                                                                 rule.Comparison ?? ComparisonEnum.And));
        }