diff --git a/Src/Asp.Net/SqlSugar/Common/CacheManager.cs b/Src/Asp.Net/SqlSugar/Common/CacheManager.cs index 8ba369db8..a4fc5c4c1 100644 --- a/Src/Asp.Net/SqlSugar/Common/CacheManager.cs +++ b/Src/Asp.Net/SqlSugar/Common/CacheManager.cs @@ -39,7 +39,10 @@ namespace SqlSugar if (_instance == null) lock (_instanceLock) if (_instance == null) + { _instance = new CacheManager(); + CacheManager.Add(_instance.InstanceCache); + } return _instance; } @@ -84,4 +87,23 @@ namespace SqlSugar } } } + public static class CacheManager + { + private static List CacheObjects = new List(); + internal static void Add(object CacheObject) + { + CacheObjects.Add(CacheObject); + } + + public static void RemoveAllCache() + { + lock (CacheObjects) + { + for (int i = 0; i < CacheObjects.Count; i++) + { + CacheObjects[i] = Activator.CreateInstance(CacheObjects[i].GetType(), true); + } + } + } + } }