From da62e541a31392730a34e4fdcff0318c6bab8352 Mon Sep 17 00:00:00 2001 From: sunkaixuna <610262374@qq.com> Date: Thu, 11 Nov 2021 20:51:05 +0800 Subject: [PATCH] Update diffflog --- Src/Asp.Net/SqlServerTest/Demo/DemoB_Aop.cs | 3 +++ .../Abstract/UpdateProvider/UpdateableProvider.cs | 12 ++++++++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Src/Asp.Net/SqlServerTest/Demo/DemoB_Aop.cs b/Src/Asp.Net/SqlServerTest/Demo/DemoB_Aop.cs index 2a89451c9..367eecf6e 100644 --- a/Src/Asp.Net/SqlServerTest/Demo/DemoB_Aop.cs +++ b/Src/Asp.Net/SqlServerTest/Demo/DemoB_Aop.cs @@ -65,6 +65,9 @@ namespace OrmTest db.Updateable(data).EnableDiffLogEvent("--update Order--").ExecuteCommand(); db.Updateable(list.Take(5).ToList()).EnableDiffLogEvent("--update Order--").ExecuteCommand(); + + + db.Updateable().SetColumns(it=>it.Name=="asdfa").Where(it=>it.Id==1).EnableDiffLogEvent("--update Order--").ExecuteCommand(); Console.WriteLine("#### Aop End ####"); } } diff --git a/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs b/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs index ece1ad562..7227bbd25 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs @@ -807,8 +807,16 @@ namespace SqlSugar private List GetDiffTable(string sql, List parameters) { List result = new List(); - //var whereSql = Regex.Replace(sql, ".* WHERE ", "", RegexOptions.Singleline); - var dt = this.Context.Queryable().WhereClassByPrimaryKey(this.UpdateObjs.ToList()).ToDataTable(); + DataTable dt = null; + if (this.UpdateParameterIsNull) + { + var whereSql = Regex.Replace(sql, ".* WHERE ", "", RegexOptions.Singleline); + dt = this.Context.Queryable().Where(whereSql).AddParameters(parameters).ToDataTable(); + } + else + { + dt=this.Context.Queryable().WhereClassByPrimaryKey(this.UpdateObjs.ToList()).ToDataTable(); + } if (dt.Rows != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows)