浏览代码

Invalidate parent folder's cache on deletion/creation (#15423)

theguymadmax 1 月之前
父节点
当前提交
49efd68fc7
共有 1 个文件被更改,包括 18 次插入0 次删除
  1. 18 0
      Emby.Server.Implementations/Library/LibraryManager.cs

+ 18 - 0
Emby.Server.Implementations/Library/LibraryManager.cs

@@ -457,6 +457,12 @@ namespace Emby.Server.Implementations.Library
                 _cache.TryRemove(child.Id, out _);
                 _cache.TryRemove(child.Id, out _);
             }
             }
 
 
+            if (parent is Folder folder)
+            {
+                folder.Children = null;
+                folder.UserData = null;
+            }
+
             ReportItemRemoved(item, parent);
             ReportItemRemoved(item, parent);
         }
         }
 
 
@@ -1993,6 +1999,12 @@ namespace Emby.Server.Implementations.Library
                 RegisterItem(item);
                 RegisterItem(item);
             }
             }
 
 
+            if (parent is Folder folder)
+            {
+                folder.Children = null;
+                folder.UserData = null;
+            }
+
             if (ItemAdded is not null)
             if (ItemAdded is not null)
             {
             {
                 foreach (var item in items)
                 foreach (var item in items)
@@ -2150,6 +2162,12 @@ namespace Emby.Server.Implementations.Library
 
 
             _itemRepository.SaveItems(items, cancellationToken);
             _itemRepository.SaveItems(items, cancellationToken);
 
 
+            if (parent is Folder folder)
+            {
+                folder.Children = null;
+                folder.UserData = null;
+            }
+
             if (ItemUpdated is not null)
             if (ItemUpdated is not null)
             {
             {
                 foreach (var item in items)
                 foreach (var item in items)