public SubQueryColumn(QuerySource.SubQuery querySource, QueryField field) { QuerySource = querySource; Field = field; ParsingTracer.WriteLine(field); }
public override FieldIndex[] Select <T>(ExpressionParser <T> parser) { ParsingTracer.WriteLine(this); ParsingTracer.WriteLine(QuerySource); ParsingTracer.IncIndentLevel(); if (_index == null) { SetSubIndex(parser); _index = new FieldIndex[_subIndex.Length]; for (var i = 0; i < _subIndex.Length; i++) { var col = QuerySource.SubSql.Select.Columns[_subIndex[i].Index]; _index[i] = new FieldIndex { Index = QuerySource.SqlQuery.Select.Add(col), Field = this }; } } ParsingTracer.DecIndentLevel(); ParsingTracer.WriteLine(QuerySource); return(_index); }
public override FieldIndex[] Select <T>(ExpressionParser <T> parser) { ParsingTracer.WriteLine(this); ParsingTracer.IncIndentLevel(); if (_indexes == null) { var indexes = new List <FieldIndex>(Fields.Count); foreach (var field in Fields) { foreach (var idx in field.Select(parser)) { indexes.Add(new FieldIndex { Index = idx.Index, Field = field }); } } _indexes = indexes.ToArray(); } ParsingTracer.DecIndentLevel(); return(_indexes); }
public ExprColumn(QuerySource source, Expression expr, string alias) { QuerySource = source; Expr = expr; _alias = alias; ParsingTracer.WriteLine(this); }
public Column(QuerySource.Table table, SqlField field, MemberMapper mapper) { Field = field; Table = table; Mapper = mapper; 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 override FieldIndex[] Select <T>(ExpressionParser <T> _) { ParsingTracer.WriteLine(this); ParsingTracer.WriteLine("table", Table); ParsingTracer.IncIndentLevel(); var index = new[] { new FieldIndex { Index = Table.SqlQuery.Select.Add(Field, Field.Alias), Field = this } }; ParsingTracer.DecIndentLevel(); ParsingTracer.WriteLine("table", Table); return(index); }
public override FieldIndex[] Select <T>(ExpressionParser <T> parser) { ParsingTracer.WriteLine(this); ParsingTracer.WriteLine(GroupBySource.BaseQuery); ParsingTracer.IncIndentLevel(); if (_index == null) { _index = GroupBySource.BaseQuery.Select(parser); } ParsingTracer.DecIndentLevel(); ParsingTracer.WriteLine(GroupBySource.BaseQuery); return(_index); }
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(); }
public override FieldIndex[] Select <T>(ExpressionParser <T> parser) { ParsingTracer.WriteLine(this); ParsingTracer.WriteLine(QuerySource); ParsingTracer.IncIndentLevel(); if (_index == null) { if (_sqlExpression == null) { _sqlExpression = Parse(parser, QuerySource.Sources); } _index = new[] { new FieldIndex { Index = QuerySource.SqlQuery.Select.Add(_sqlExpression, _alias), Field = this } }; } ParsingTracer.DecIndentLevel(); ParsingTracer.WriteLine(QuerySource); return(_index); }
protected QuerySource(SqlQuery sqlQuery, LambdaInfo lambda, params QuerySource[] baseQueries) { SqlQuery = sqlQuery; Lambda = lambda; _sources = baseQueries; #if DEBUG && TRACE_PARSING ParsingTracer.WriteLine(lambda); ParsingTracer.WriteLine(this); foreach (var query in baseQueries) { ParsingTracer.WriteLine("base", query); } foreach (var field in Fields) { ParsingTracer.WriteLine("field ", field); } ParsingTracer.IncIndentLevel(); #endif }
public GroupByColumn(QuerySource.GroupBy groupBySource) { GroupBySource = groupBySource; ParsingTracer.WriteLine("groupBy", this); }