protected override Expression VisitSubquery(SubqueryExpression subquery) { if (((subquery.NodeType == ((ExpressionType)0x3f0)) || (subquery.NodeType == ((ExpressionType)0x3f2))) && (subquery.Select != null)) { Debug.Assert(subquery.Select.Columns.Count == 1); this.MarkColumnAsUsed(subquery.Select.Alias, subquery.Select.Columns[0].Name); } return(base.VisitSubquery(subquery)); }
protected override Expression VisitSubquery(SubqueryExpression subquery) { IList <OrderExpression> gatheredOrderings = this.gatheredOrderings; this.gatheredOrderings = null; Expression expression = base.VisitSubquery(subquery); this.gatheredOrderings = gatheredOrderings; return(expression); }
protected virtual Expression VisitSubquery(SubqueryExpression subquery) { switch (subquery.NodeType) { case ((ExpressionType)0x3f0): return(this.VisitScalar((ScalarExpression)subquery)); case ((ExpressionType)0x3f1): return(this.VisitExists((ExistsExpression)subquery)); case ((ExpressionType)0x3f2): return(this.VisitIn((InExpression)subquery)); } return(subquery); }
protected virtual bool CompareSubquery(SubqueryExpression a, SubqueryExpression b) { if (a.NodeType == b.NodeType) { switch (a.NodeType) { case ((ExpressionType)0x3f0): return(this.CompareScalar((ScalarExpression)a, (ScalarExpression)b)); case ((ExpressionType)0x3f1): return(this.CompareExists((ExistsExpression)a, (ExistsExpression)b)); case ((ExpressionType)0x3f2): return(this.CompareIn((InExpression)a, (InExpression)b)); } } return(false); }
protected override Expression VisitSubquery(SubqueryExpression subquery) { return(subquery); }