protected internal override Expression VisitScalar(ScalarExpression scalar) { if (!scalar.Select !.IsForXmlPathEmpty) { using (Scope()) return(base.VisitScalar(scalar)); }
protected internal override Expression VisitScalar(ScalarExpression exists) { sb.Append("("); this.Visit(exists.Select); sb.Append(")"); return(exists); }
protected internal virtual Expression VisitScalar(ScalarExpression scalar) { var select = (SelectExpression)this.Visit(scalar.Select); if (select != scalar.Select) { return(new ScalarExpression(scalar.Type, select)); } return(scalar); }
protected internal override Expression VisitScalar(ScalarExpression scalar) { var column = scalar.Select.Columns.SingleEx(); VisitColumn(new ColumnExpression(scalar.Type, scalar.Select.Alias, column.Name ?? "-")); var select = (SelectExpression)this.Visit(scalar.Select); if (select != scalar.Select) { return(new ScalarExpression(scalar.Type, select)); } return(scalar); }
protected internal override Expression VisitScalar(ScalarExpression scalar) { if (connector.SupportsScalarSubquery && (!inAggregate || connector.SupportsScalarSubqueryInAggregates)) { return(base.VisitScalar(scalar)); } else { var select = scalar.Select; if (string.IsNullOrEmpty(select.Columns[0].Name)) { select = new SelectExpression(select.Alias, select.IsDistinct, select.Top, new[] { new ColumnDeclaration("scalar", select.Columns[0].Expression) }, select.From, select.Where, select.OrderBy, select.GroupBy, select.SelectOptions); } this.currentFrom = new JoinExpression(JoinType.OuterApply, this.currentFrom, select, null); return(new ColumnExpression(scalar.Type, scalar.Select.Alias, select.Columns[0].Name)); } }
protected internal override Expression VisitScalar(ScalarExpression scalar) { if (!scalar.Select.IsForXmlPathEmpty) { using (Scope()) return(base.VisitScalar(scalar)); } else { using (Scope()) { var oldOuterMostSelect = outerMostSelect; outerMostSelect = scalar.Select; var result = base.VisitScalar(scalar); outerMostSelect = oldOuterMostSelect; return(result); } } }
protected internal override Expression VisitScalar(ScalarExpression scalar) { return(scalar); }
protected virtual bool CompareScalar(ScalarExpression a, ScalarExpression b) { return(Compare(a.Select, b.Select)); }
protected internal override Expression VisitScalar(ScalarExpression scalar) { AddSingleColumn(scalar); return(base.VisitScalar(scalar)); }