Update exp to sql

This commit is contained in:
sunkaixuan
2023-05-22 22:40:49 +08:00
parent 2d4640f84d
commit 740d24efef
2 changed files with 7 additions and 1 deletions

View File

@@ -384,6 +384,10 @@ namespace SqlSugar
{
return (expression as ConstantExpression).Value;
}
else if (expression is MethodCallExpression)
{
return LambdaExpression.Lambda(expression).Compile().DynamicInvoke();
}
else
{
return GetMemberValue((expression as MemberExpression).Member, expression);

View File

@@ -798,7 +798,9 @@ namespace SqlSugar
this.Context.Parameters.RemoveAll(it => model.Args[1].MemberName.ObjToString().Contains(it.ParameterName));
List<IConditionalModel> conditionalModels = (List<IConditionalModel>)model.Args[1].MemberValue;
var sqlObj = this.Context.SugarContext.Context.Queryable<object>().SqlBuilder.ConditionalModelToSql(conditionalModels, 0);
model.Args[1].MemberName = sqlObj.Key;
var sql = sqlObj.Key;
UtilMethods.RepairReplicationParameters(ref sql, sqlObj.Value, 0, "_" + this.Context.ParameterIndex + "_B");
model.Args[1].MemberName = sql;
if (sqlObj.Value != null)
{
this.Context.Parameters.AddRange(sqlObj.Value);