Ejemplo n.º 1
0
        public virtual WhereBuilder SubQuery(Action <WhereBuilder> subQuery, bool and = true)
        {
            // create query builder for same type.
            var qb = new WhereBuilder(Query);

            qb.NullChecking(IsNullCheckingEnabled);

            // callback.
            subQuery(qb);

            // create a query part.
            var part = new WhereBuilderCondition();

            part.And        = and;
            part.Conditions = qb.Filters;
            Filters.Add(part);

            //return self.
            return(this);
        }
Ejemplo n.º 2
0
        protected virtual Expression BuildConditionExpression(ParameterExpression parameter, WhereBuilderCondition filter)
        {
            var ret = QueryableHelpers.CreateConditionExpression(
                parameter.Type,
                filter.Path,
                filter.ConditionOperator,
                filter.Value,
                filter.ConvertStrategy,
                filter.CollectionHandling,
                parameter: parameter,
                nullChecking: IsNullCheckingEnabled,
                stringComparision: filter.StringComparisation,
                negate: filter.Negate
                );

            return(ret);
        }