Exemple #1
0
 private FilterSpec(FilterSpec parentFilter = null)
 {
     if (parentFilter != null)
     {
         Expressions.AddRange(parentFilter.Expressions);
     }
 }
Exemple #2
0
        public FilterSpec(QueryExpression queryExpression , FilterSpec parentFilter = null)
            : this(parentFilter)
        {
            if (queryExpression == null)
                return;

            Expressions.Add(queryExpression);
        }
Exemple #3
0
        internal QuerySpec CreateQuerySpec(FilterSpec filter, ScalarSpec scalarSpec = null, int? skip = null, int? take = null, SortOrderSpec sortSpec = null)
        {
            if (DataProvider.SupportsQueryTranslation())
                return DataProvider.CreateQuerySpec(filter, scalarSpec, sortSpec, skip, take, Schema);

            var querySpec = new QuerySpec(new CodeQuerySpec(), null);

            var codeQuerySpec = (CodeQuerySpec) querySpec.Code;

            if (filter != null)
                foreach (var expression in filter.Expressions)
                    codeQuerySpec.AddFilter(Schema, expression);

            if (sortSpec != null)
                foreach (var expression in sortSpec.Expressions)
                    codeQuerySpec.AddSort(Schema, expression.Expression, expression.SortOrder);

            if (scalarSpec != null)
                codeQuerySpec.AddScalar(Schema, scalarSpec.Expression);

            codeQuerySpec.Skip = skip;
            codeQuerySpec.Take = take;

            return querySpec;
        }
Exemple #4
0
 public FilterSpec(LambdaExpression lambda, FilterSpec parentFilter = null)
     : this(parentFilter)
 {
     if (lambda != null)
         Add(lambda);
 }
Exemple #5
0
 public QuerySpec CreateQuerySpec(FilterSpec filter, ScalarSpec expression, SortOrderSpec sortOrder, int? skip, int? take, OrmSchema schema)
 {
     throw new NotSupportedException();
 }