public GroupBy( SqlQuery sqlQuery, QuerySource groupQuery, QuerySource originalQuery, LambdaInfo keySelector, QuerySource elementSource, Type groupingType, bool isWrapped, ISqlExpression[] byExpressions) : base(sqlQuery, keySelector, groupQuery) { ParsingTracer.IncIndentLevel(); OriginalQuery = originalQuery; ElementSource = elementSource; GroupingType = groupingType; IsWrapped = isWrapped; ByExpressions = byExpressions; var field = new GroupByColumn(this); Fields.Add(field); Members.Add(groupingType.GetProperty("Key"), field); ParsingTracer.DecIndentLevel(); }
public ExprColumn(QuerySource source, Expression expr, string alias) { QuerySource = source; Expr = expr; _alias = alias; ParsingTracer.WriteLine(this); }
public ExprColumn(QuerySource source, ISqlExpression expr, string alias) { QuerySource = source; _sqlExpression = expr; _alias = alias; ParsingTracer.WriteLine("sql", this); }
public SubQuerySourceColumn(SubQuery querySource, QuerySource sourceColumn) : base(sourceColumn.SqlQuery, sourceColumn.Lambda, sourceColumn.Sources) { QuerySource = querySource; SourceColumn = sourceColumn; ParsingTracer.WriteLine(sourceColumn); }
public bool Find(QuerySource query) { if (query == this) { return(true); } foreach (var source in Sources) { if (source.Find(query)) { return(true); } } return(false); }
public SubQuery(SqlQuery currentSql, SqlQuery subSql, QuerySource baseQuery, bool addToSource) : base(currentSql, baseQuery.Lambda, baseQuery) { ParsingTracer.WriteLine(subSql); SubSql = subSql; if (addToSource) { SqlQuery.From.Table(subSql); } foreach (var field in baseQuery.Fields) { EnsureField(field); } ParsingTracer.DecIndentLevel(); }
[Conditional("TRACE_PARSING")] public static void WriteLine(string prefix, QuerySource source) { WriteLineInternal(prefix, source); }
public GroupJoin(SqlQuery currentSql, SqlQuery subSql, QuerySource baseQuery) : base(currentSql, subSql, baseQuery, false) { }
public SubQuery(SqlQuery currentSql, SqlQuery subSql, QuerySource baseQuery) : this(currentSql, subSql, baseQuery, true) { }
public QueryColumn(QuerySource querySource, QueryField queryField) { _querySource = querySource; _queryField = queryField; }