Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Erro ao criar Migration de relaciomento muitos para muitos

Quando tento gerar a migration do relaciomento N para N aparece a mensagem : The entity type 'PromocaoProduto' requires a primary key to be defined.

Mas eu já indiquei que a tabela intermediária possui os dois campos Id obrigatórios.

Não consegui entender oque está errado.


namespace Alura.Loja.Testes.ConsoleApp
{
    public class PromocaoProduto
    {
        public int ProdutoId { get; set; }
        public Produto Produto { get; set; }
        public int PromocaoId { get; set; }
        public Promocao Promocao { get; set; }

    }
}
1 resposta
solução!

Olá Gabriel, tudo certo?

Você definiu no modelBuilder a criação da chave composta?

protected override void OnModelCreating(ModelBuilder modelBuilder)
        {
            modelBuilder
                .Entity<PromocaoProduto>()
                .HasKey(pp => new { pp.PromocaoId, pp.ProdutoId });
            base.OnModelCreating(modelBuilder);
        }

No aguardo!