public override SqlBuilder BuildSql(BaseExpressionProvider provider, MethodCallExpression expression, Dictionary <string, ArgumentType> argumentTypes) { var argumentsSql = provider.GetMethodCallArgumentsSql(expression, argumentTypes); return(new SqlBuilder($"{SqlFunctionName}({argumentsSql[0]}, {argumentsSql[1]})") .MergeColumnsInfo(argumentsSql)); }
/// <inheritdoc /> public override SqlBuilder BuildSql(BaseExpressionProvider provider, MethodCallExpression expression, Dictionary <string, ArgumentType> argumentTypes) { var argumentSql = provider.GetMethodCallArgumentsSql(expression, argumentTypes)[0]; var sqlBuilder = provider.GetExpressionSql(expression.Object, argumentTypes); return(new SqlBuilder(sqlBuilder.AffectedColumns, $"{sqlBuilder} LIKE {BuildEndSql(argumentSql)}") .MergeColumnsInfo(argumentSql)); }
/// <inheritdoc /> public override SqlBuilder BuildSql(BaseExpressionProvider provider, MethodCallExpression expression, Dictionary <string, ArgumentType> argumentTypes) { var expressionToFindSql = provider.GetMethodCallArgumentsSql(expression, argumentTypes)[0]; var expressionToSearchSql = provider.GetExpressionSql(expression.Object, argumentTypes); return(new SqlBuilder(expressionToFindSql.AffectedColumns, CombineSql(expressionToSearchSql, expressionToFindSql)) .MergeColumnsInfo(expressionToSearchSql)); }
/// <inheritdoc /> public override SqlBuilder BuildSql(BaseExpressionProvider provider, MethodCallExpression expression, Dictionary <string, ArgumentType> argumentTypes) { var argumentsSql = provider.GetMethodCallArgumentsSql(expression, argumentTypes); return(BuildSql(argumentsSql)); }