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

Id no Entity Framework

Bom dia, percebi que o Id é sempre gerado de forma automática, ok, mas caso eu quisesse atribuir esse ID, como faria ? tentei fazer isso atribuindo um valor a ele, por exemplo:

var estudante = new Aluno()
                {
                    Nome = "Lucas",
                    AlunoId = 3,
                    DataNascimento = new DateTime(year: 1996, month: 05, day: 28)

                };

mas o Entity ainda atribui como ID automaticamente (1 caso seja o primeiro, ID = 2 caso segundo e assim por diante). Tentei usar a atribuição [Key]

    class Aluno : Pessoa
    {
        [Key]
        public int AlunoId { get; set; }
        public Aula Aula { get; set; }
    }

Mas não obtive sucesso, portanto decidi usar o Fórum.

1 resposta
solução!

Olá Lucas,

Acredito que o EF por padrão define a coluna Id dos models como valores gerados no insert, isso significa que define a propriedade a partir do Add ao datset, existe a possibilidade de desabilitar esse comportamento usando o atributo:

[DatabaseGenerated(DatabaseGeneratedOption.None)]
 public int AlunoId { get; set; }

Esse artigo explica o funcionamento.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software