/// <summary> /// Visitor pattern method for <see cref="DbFunctionExpression"/>. /// </summary> /// <param name="expression">The DbFunctionExpression that is being visited.</param> /// <exception cref="ArgumentNullException"><paramref name="expression"/> is null</exception> public override void Visit(DbFunctionExpression expression) { // #433613: PreSharp warning 56506: Parameter 'expression' to this public method must be validated: A null-dereference can occur here. EntityUtil.CheckArgumentNull(expression, "expression"); VisitExpressionList(expression.Arguments); }
public override DbExpression Visit(DbFunctionExpression expression) { EntityUtil.CheckArgumentNull(expression, "expression"); DbExpression result = expression; IList <DbExpression> newArguments = this.VisitExpressionList(expression.Arguments); EdmFunction newFunction = this.VisitFunction(expression.Function); if (!object.ReferenceEquals(expression.Arguments, newArguments) || !object.ReferenceEquals(expression.Function, newFunction)) { result = CqtBuilder.Invoke(newFunction, newArguments); } NotifyIfChanged(expression, result); return(result); }
/// <summary> /// Visitor pattern method for DbFunctionExpression /// </summary> /// <param name="expression">The DbFunctionExpression that is being visited.</param> /// <returns>An instance of TResultType.</returns> public abstract TResultType Visit(DbFunctionExpression expression);
/// <summary> /// Visitor pattern method for DbFunctionExpression /// </summary> /// <param name="expression">The DbFunctionExpression that is being visited.</param> public abstract void Visit(DbFunctionExpression expression);