Browse Source

Detach tracked entries on dispose

crobibero 5 năm trước cách đây
mục cha
commit
9787b2fe8a
1 tập tin đã thay đổi với 13 bổ sung0 xóa
  1. 13 0
      Jellyfin.Server.Implementations/JellyfinDb.cs

+ 13 - 0
Jellyfin.Server.Implementations/JellyfinDb.cs

@@ -1,5 +1,6 @@
 #pragma warning disable CS1591
 
+using System;
 using System.Linq;
 using Jellyfin.Data;
 using Jellyfin.Data.Entities;
@@ -133,6 +134,18 @@ namespace Jellyfin.Server.Implementations
             return base.SaveChanges();
         }
 
+        /// <inheritdoc/>
+        public override void Dispose()
+        {
+            foreach (var entry in ChangeTracker.Entries())
+            {
+                entry.State = EntityState.Detached;
+            }
+
+            GC.SuppressFinalize(this);
+            base.Dispose();
+        }
+
         /// <inheritdoc />
         protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
         {