diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs index a8c677530..1614579f6 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/DeleteProvider/LogicDeleteProvider.cs @@ -15,6 +15,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) { @@ -29,6 +36,10 @@ namespace SqlSugar updateable.UpdateBuilder.Parameters.AddRange(pars); Convert(updateable as UpdateableProvider); var result = updateable.Where(where).ExecuteCommand(); + if (isAutoDelFilter) + { + DeleteBuilder.Context.CurrentConnectionConfig.MoreSettings.IsAutoUpdateQueryFilter = true; + } return result; } public int ExecuteCommand(string LogicFieldName, object deleteValue, string deleteTimeFieldName,string userNameFieldName,object userNameValue)