Quellcode durchsuchen

修复清除内存缓存异常的问题

zhontai vor 2 Jahren
Ursprung
Commit
f745d4fcfb
1 geänderte Dateien mit 2 neuen und 2 gelöschten Zeilen
  1. 2 2
      src/platform/ZhonTai.Admin/Tools/Cache/MemoryCacheTool.cs

+ 2 - 2
src/platform/ZhonTai.Admin/Tools/Cache/MemoryCacheTool.cs

@@ -16,7 +16,6 @@ namespace ZhonTai.Admin.Tools.Cache;
 public class MemoryCacheTool : ICacheTool
 {
     private readonly IMemoryCache _memoryCache;
-
     public MemoryCacheTool(IMemoryCache memoryCache)
     {
         _memoryCache = memoryCache;
@@ -143,7 +142,8 @@ public class MemoryCacheTool : ICacheTool
     private List<string> GetAllKeys()
     {
         const BindingFlags flags = BindingFlags.Instance | BindingFlags.NonPublic;
-        var entries = _memoryCache.GetType().GetField("_entries", flags).GetValue(_memoryCache);
+        var coherentState = _memoryCache.GetType().GetField("_coherentState", flags).GetValue(_memoryCache);
+        var entries = coherentState.GetType().GetField("_entries", flags).GetValue(coherentState);
         var cacheItems = entries as IDictionary;
         var keys = new List<string>();
         if (cacheItems == null) return keys;