예제 #1
0
        protected DbFunctionExpression UpdateFunction(DbFunctionExpression func, string name, IEnumerable <Expression> arguments)
        {
            if (name != func.Name || arguments != func.Arguments)
            {
                return(new DbFunctionExpression(func.Type, name, arguments));
            }

            return(func);
        }
예제 #2
0
        protected override Expression VisitFunction(DbFunctionExpression func)
        {
            if (this.linguist.Language.IsRowsAffectedExpressions(func))
            {
                return(Expression.Property(this.executor, nameof(QueryExecutor.RowsAffected)));
            }

            return(base.VisitFunction(func));
        }
예제 #3
0
        protected virtual Expression VisitFunction(DbFunctionExpression function)
        {
            this.Write("FUNCTION ");
            this.Write(function.Name);

            if (function.Arguments.Count > 0)
            {
                this.Write("(");
                this.VisitExpressionList(function.Arguments);
                this.Write(")");
            }

            return(function);
        }
예제 #4
0
        protected override Expression VisitFunction(DbFunctionExpression func)
        {
            this.Write(func.Name);

            if (func.Arguments.Count > 0)
            {
                this.Write("(");

                for (int i = 0, n = func.Arguments.Count; i < n; i++)
                {
                    if (i > 0)
                    {
                        this.Write(", ");
                    }

                    this.Visit(func.Arguments[i]);
                }

                this.Write(")");
            }

            return(func);
        }
 protected virtual bool CompareFunction(DbFunctionExpression x, DbFunctionExpression y)
 {
     return(x.Name == y.Name && this.CompareExpressionList(x.Arguments, y.Arguments));
 }
예제 #6
0
 protected virtual Expression VisitFunction(DbFunctionExpression func)
 {
     return(this.UpdateFunction(func, func.Name, this.VisitExpressionList(func.Arguments)));
 }