public void NormalizeQueryExpression(QueryExpression qe) { foreach (var qs in qe.EnumerateDescendants<QuerySpecification>()) { NormalizeQuerySpecification(qs); } }
public TableReference(QueryExpression qe) { InitializeMembers(); this.node = qe; }
protected void ResolveQueryExpression(QueryExpression qe, int depth) { // Resolve query specifications in the FROM clause foreach (var qs in qe.EnumerateDescendants<QuerySpecification>()) { ResolveQuerySpecification(qs, depth); } // Copy select list columns from the very first query specification var firstqs = qe.FindDescendant<QuerySpecification>(); qe.TableReference.ColumnReferences.AddRange(firstqs.ResultsTableReference.ColumnReferences); }