diff --git a/Src/Asp.Net/SqlSugar/Abstract/FilterProvider/FilterProvider.cs b/Src/Asp.Net/SqlSugar/Abstract/FilterProvider/FilterProvider.cs index 22892f384..d083762f1 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/FilterProvider/FilterProvider.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/FilterProvider/FilterProvider.cs @@ -12,6 +12,7 @@ namespace SqlSugar { internal SqlSugarProvider Context { get; set; } private List _Filters { get; set; } + private List _BackUpFilters { get; set; } public IFilter Add(SqlFilterItem filter) { @@ -49,6 +50,20 @@ namespace SqlSugar { _Filters = new List(); } + public void ClearAndBackup() + { + _BackUpFilters = _Filters; + _Filters = new List(); + } + + public void Restore() + { + _Filters = _BackUpFilters; + if (_Filters == null) + { + _Filters = new List(); + } + } public void AddTableFilter(Expression> expression, FilterJoinPosition filterJoinType = FilterJoinPosition.On) where T : class,new() {