Não entendi muito bem o porque que vamos trocar a config do banco de dados. Porque no meu ponto de vista, o relacionamento entre entidades ficou confuso. Não vamos mais usar o Entity para fazer o gerenciamento?
Nome do método alterado: OnModelCreating (localizado na classe ´ScreenSoundContext do projetoScreenSound.Shared.Dados).
Como está:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Musica>()
.HasOne(m => m.Artista)
.WithMany(a => a.Musicas)
.HasForeignKey(m => m.ArtistaId);
modelBuilder.Entity<Musica>()
.HasMany(m => m.Generos)
.WithMany(g => g.Musica!);
}
A alteração pedida:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<Musica>()
.HasMany(c => c.Generos)
.WithMany(c => c.Musicas);
}