diff --git a/Src/Asp.Net/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs b/Src/Asp.Net/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs index e1ae248df..609b12f7d 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs @@ -95,6 +95,13 @@ namespace SqlSugar ISqlSugarClient db; List pars; string where; + var isAutoDelFilter = + DeleteBuilder.Context?.CurrentConnectionConfig?.MoreSettings?.IsAutoDeleteQueryFilter == true && + DeleteBuilder.Context?.CurrentConnectionConfig?.MoreSettings?.IsAutoUpdateQueryFilter == true; + if (isAutoDelFilter) + { + DeleteBuilder.Context.CurrentConnectionConfig.MoreSettings.IsAutoUpdateQueryFilter = false; + } LogicFieldName = _ExecuteCommand(LogicFieldName, out db, out where, out pars); if (deleteValue == null) { @@ -109,6 +116,10 @@ namespace SqlSugar updateable.UpdateBuilder.Parameters.AddRange(pars); Convert(updateable as UpdateableProvider); var result =await updateable.Where(where).ExecuteCommandAsync(); + if (isAutoDelFilter) + { + DeleteBuilder.Context.CurrentConnectionConfig.MoreSettings.IsAutoUpdateQueryFilter = true; + } return result; }