Esempio n. 1
0
        public Expression VisitMySQLComplexFunctionArgumentExpression(MySQLComplexFunctionArgumentExpression mySqlComplexFunctionArgumentExpression)
        {
            Check.NotNull(mySqlComplexFunctionArgumentExpression, nameof(mySqlComplexFunctionArgumentExpression));

            var first = true;

            foreach (var argument in mySqlComplexFunctionArgumentExpression.ArgumentParts)
            {
                if (first)
                {
                    first = false;
                }
                else
                {
                    Sql.Append(" ");
                }

                Visit(argument);
            }

            return(mySqlComplexFunctionArgumentExpression);
        }
        private MySQLComplexFunctionArgumentExpression ApplyTypeMappingOnComplexFunctionArgument(MySQLComplexFunctionArgumentExpression complexFunctionArgumentExpression)
        {
            var inferredTypeMapping = ExpressionExtensions.InferTypeMapping(complexFunctionArgumentExpression.ArgumentParts.ToArray())
                                      ?? _typeMappingSource.FindMapping(complexFunctionArgumentExpression.Type);

            return(new MySQLComplexFunctionArgumentExpression(
                       complexFunctionArgumentExpression.ArgumentParts,
                       complexFunctionArgumentExpression.Type,
                       inferredTypeMapping ?? complexFunctionArgumentExpression.TypeMapping));
        }