mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-11-09 02:44:58 +08:00
-
This commit is contained in:
@@ -40,9 +40,9 @@ namespace OrmTest.ExpressionTest
|
||||
expContext.Resolve();
|
||||
var value = expContext.Result.GetString();
|
||||
var pars = expContext.Parameters;
|
||||
base.Check(value, pars, "( @Const0 = (UPPER(Id)) )", new List<SugarParameter>() {
|
||||
new SugarParameter("@Const0","a")
|
||||
}, "ToUpper");
|
||||
base.Check(value, pars, "((rtrim(ltrim(@MethodConst0))) = Name )", new List<SugarParameter>() {
|
||||
new SugarParameter("@MethodConst0"," a")
|
||||
}, "Trim");
|
||||
}
|
||||
|
||||
private void ToUpper()
|
||||
|
||||
@@ -103,7 +103,20 @@ namespace SqlSugar
|
||||
if (parameter.BaseExpression is BinaryExpression)
|
||||
{
|
||||
var otherExpression = isLeft == true ? parameter.BaseParameter.RightExpression : parameter.BaseParameter.LeftExpression;
|
||||
if (otherExpression is MemberExpression)
|
||||
if (parameter.Expression is MethodCallExpression)
|
||||
{
|
||||
var appendValue = value;
|
||||
if (this.Context.Result.Contains(ExpressionConst.Format0))
|
||||
{
|
||||
this.Context.Result.Replace(ExpressionConst.Format0, appendValue.ObjToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
this.Context.Result.Append(appendValue);
|
||||
}
|
||||
this.AppendOpreator(parameter, isLeft);
|
||||
}
|
||||
else if (otherExpression is MemberExpression)
|
||||
{
|
||||
string appendValue = Context.SqlParameterKeyWord
|
||||
+ ((MemberExpression)otherExpression).Member.Name
|
||||
@@ -145,7 +158,7 @@ namespace SqlSugar
|
||||
}
|
||||
}
|
||||
}
|
||||
protected void ActionLeft(ExpressionParameter parameter, bool? isLeft)
|
||||
protected void AppendOpreator(ExpressionParameter parameter, bool? isLeft)
|
||||
{
|
||||
if (isLeft == true)
|
||||
{
|
||||
|
||||
@@ -51,8 +51,7 @@ namespace SqlSugar
|
||||
model.Args.Add(methodCallExpressionArgs);
|
||||
}
|
||||
var methodValue = GetMdthodValue(name, model);
|
||||
base.Context.Result.Append(methodValue);
|
||||
base.ActionLeft(parameter, isLeft);
|
||||
base.AppendValue(parameter,isLeft, methodValue);
|
||||
break;
|
||||
case ResolveExpressType.SelectSingle:
|
||||
case ResolveExpressType.SelectMultiple:
|
||||
|
||||
Reference in New Issue
Block a user