CallMethod bug

This commit is contained in:
sunkaixuna 2021-11-04 01:41:16 +08:00
parent eed19ae9d1
commit 0c0da83ef2

View File

@ -841,12 +841,14 @@ namespace SqlSugar
{ {
if (this.InsertObjs.HasValue()) if (this.InsertObjs.HasValue())
{ {
var oldColumns = this.InsertBuilder.DbColumnInfoList.Select(it => it.PropertyName).ToList();
var expression = (LambdaExpression.Lambda(method).Body as LambdaExpression).Body; var expression = (LambdaExpression.Lambda(method).Body as LambdaExpression).Body;
Check.Exception(!(expression is MethodCallExpression), method.ToString() + " is not method"); Check.Exception(!(expression is MethodCallExpression), method.ToString() + " is not method");
var callExpresion = expression as MethodCallExpression; var callExpresion = expression as MethodCallExpression;
UtilMethods.DataInoveByExpresson(this.InsertObjs,callExpresion); UtilMethods.DataInoveByExpresson(this.InsertObjs,callExpresion);
this.InsertBuilder.DbColumnInfoList = new List<DbColumnInfo>(); this.InsertBuilder.DbColumnInfoList = new List<DbColumnInfo>();
Init(); Init();
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => oldColumns.Contains(it.PropertyName)).ToList();
} }
return this; return this;
} }