protected override void OnModelCreating(ModelBuilder builder) { UserSeeder.SeedRoles(builder); builder.ApplyConfiguration(new ArtistConfig()); builder.ApplyConfiguration(new GenreConfig()); builder.ApplyConfiguration(new TrackConfig()); builder.ApplyConfiguration(new PlaylistConfig()); builder.ApplyConfiguration(new TrackPlaylistConfig()); var cascadeFKs = builder.Model.GetEntityTypes() .SelectMany(t => t.GetForeignKeys()) .Where(fk => !fk.IsOwnership && fk.DeleteBehavior == DeleteBehavior.Cascade); foreach (var fk in cascadeFKs) { fk.DeleteBehavior = DeleteBehavior.Restrict; } base.OnModelCreating(builder); }