private FilterSpec(FilterSpec parentFilter = null) { if (parentFilter != null) { Expressions.AddRange(parentFilter.Expressions); } }
public FilterSpec(QueryExpression queryExpression , FilterSpec parentFilter = null) : this(parentFilter) { if (queryExpression == null) return; Expressions.Add(queryExpression); }
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; }
public FilterSpec(LambdaExpression lambda, FilterSpec parentFilter = null) : this(parentFilter) { if (lambda != null) Add(lambda); }
public QuerySpec CreateQuerySpec(FilterSpec filter, ScalarSpec expression, SortOrderSpec sortOrder, int? skip, int? take, OrmSchema schema) { throw new NotSupportedException(); }