protected override Expression VisitChildren(ExpressionTreeVisitor visitor) { var arguments = visitor.VisitAndConvert(Arguments, "VisitNhNew"); return arguments != Arguments ? new NhNewExpression(Members, arguments) : this; }
protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { var newExpressions = visitor.VisitAndConvert(_expressions, "VisitChildren"); if (newExpressions != Expressions) return new SqlCompositeCustomTextGeneratorExpression (Type, newExpressions.ToArray()); else return this; }
protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { var newColumns = visitor.VisitAndConvert (Columns, "VisitChildren"); if (newColumns != Columns) return new SqlEntityDefinitionExpression (Type, TableAlias, null, IdentityExpressionGenerator, newColumns.ToArray ()); else return this; }
protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { var newArgs = visitor.VisitAndConvert (_args, "SqlFunctionExpression.VisitChildren"); if (_args != newArgs) return new SqlFunctionExpression (Type, _sqlFunctioName, newArgs.ToArray()); else return this; }
protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { ArgumentUtility.CheckNotNull ("visitor", visitor); var newItems = visitor.VisitAndConvert (_items, "SqlCollectionExpression.VisitChildren"); if (newItems != _items) return new SqlCollectionExpression (Type, newItems); return this; }
protected override Expression VisitChildren (ExpressionTreeVisitor visitor) { ArgumentUtility.CheckNotNull ("visitor", visitor); var newKeyExpression = visitor.VisitExpression (KeyExpression); var newElementExpression = visitor.VisitExpression (ElementExpression); var originalAggregationExpressions = AggregationExpressions; var newAggregationExpressions = visitor.VisitAndConvert (originalAggregationExpressions, "VisitChildren"); if (newKeyExpression != KeyExpression || newElementExpression != ElementExpression || newAggregationExpressions != originalAggregationExpressions) { var newSqlGroupingSelectExpression = new SqlGroupingSelectExpression (newKeyExpression, newElementExpression, newAggregationExpressions); return newSqlGroupingSelectExpression; } return this; }