From c25501bdd74a3f192bf39377d21247b68575ca02 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 11 Jun 2024 22:44:38 +0800 Subject: [PATCH] Synchronization code --- .../Abstract/SaveableProvider/StorageableMethodInfo.cs | 7 ++++--- .../Abstract/UpdateProvider/ParameterUpdateable.cs | 4 +++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/StorageableMethodInfo.cs b/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/StorageableMethodInfo.cs index 1ee68910c..559718d05 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/StorageableMethodInfo.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/SaveableProvider/StorageableMethodInfo.cs @@ -111,9 +111,9 @@ namespace SqlSugar } public StorageableCommonMethodInfo IgnoreColumns(params string[] ignoreColumns) { - PropertyInfo property = ObjectValue.GetType().GetProperty(type); - var value = property.GetValue(ObjectValue); - var newObj = value.GetType().GetMyMethod("IgnoreColumns", 1, typeof(string[])).Invoke(value, new object[] { ignoreColumns }); + PropertyInfo property = ObjectValue?.GetType().GetProperty(type); + var value = property?.GetValue(ObjectValue); + var newObj = value?.GetType().GetMyMethod("IgnoreColumns", 1, typeof(string[])).Invoke(value, new object[] { ignoreColumns }); StorageableCommonMethodInfo result = new StorageableCommonMethodInfo(); result.Value = newObj; return result; @@ -124,6 +124,7 @@ namespace SqlSugar public object Value { get; set; } public int ExecuteCommand() { + if(Value == null) return 0; var newObj = Value.GetType().GetMethod("ExecuteCommand").Invoke(Value, new object[] { }); return (int)newObj; } diff --git a/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/ParameterUpdateable.cs b/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/ParameterUpdateable.cs index e396119fe..82e4b3a4b 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/ParameterUpdateable.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/ParameterUpdateable.cs @@ -57,7 +57,9 @@ namespace SqlSugar var sqlTemp = ($" UPDATE {tableWithString} SET {{0}} WHERE {{1}};\r\n"); List parameters = new List(); Check.ExceptionEasy(wheres?.Any() != true, "Updates cannot be without a primary key or condition", "更新不能没有主键或者条件"); - foreach (var item in this.Context.Updateable(updateObjects).UpdateBuilder.DbColumnInfoList.GroupBy(it => it.TableId)) + var sqlDb = this.Context.CopyNew(); + sqlDb.Aop.DataExecuting = null; + foreach (var item in sqlDb.Updateable(updateObjects).UpdateBuilder.DbColumnInfoList.GroupBy(it => it.TableId)) { Check.ExceptionEasy(item?.ToList()?.Any() != true, "Set has no columns", "更新Set没有列"); StringBuilder setString = new StringBuilder();