estou trabalhando com uma api aspnet, porém, com ele tenho que inserir um pedido que a tabela contem agregação muitos para muitos, onde ao passar os paramentos com os Id's ele me retornar o erro que "Não é possível inserir um valor explícito para a coluna de identidade na tabela quando IDENTITY_INSERT está definido como OFF." porém se eu passar outro campo menos os id das das FK ele inseri sem o os ID da FK, no meu banco de dados ele cria a tabela opcionaisPedido com as seguintes colunas: ProdutoId (PK) OpcionalId(PK) PedidoId(FK) OpcionaisId(Fk) creio que por causa desse dois PK o meu problema de não conseguir adicionarcom o enttity, segue o meu código
try
{
context.Pedidos.Add(model);
context.ChangeTracker.Entries();
await context.SaveChangesAsync();
return Ok(model);
}
catch (Exception ex)
{
return BadRequest(new { messagem = "não Funcionou " + ex.InnerException.Message });
}
Context
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder
.Entity<OpcionaisPedido>()
.HasKey(pa => new { pa.OpcionalId, pa.ProdutoId });
base.OnModelCreating(modelBuilder);
}
public DbSet<Pedido> Pedidos { get; set; }
public DbSet<Opcionais> Opcionais { get; set; }
public class Pedido
{
public int Id { get; set; }
public Embalagem Tamanho { get; set; }
public IList<OpcionaisPedido> Adicional { get; set; }
public Sabores Sabor { get; set; }
public double ValorFinal { get; set; }
public bool Finalizado { get; set; }
}