Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Arquivo edmx

Boa tarde.... no curso estamos usando uma abordagem diferente de utilização do EF certo? Esse arquivo ByteBankModel.edmx é responsável por gerar as classes a partir do banco de dados...? Seria isso certo? Tem algum curso no alura ou algum conteúdo onde posso me informar melhor sobre esse tipo de abordagem.... Neste caso não existem migrations certo? Se alguém puder dar uma clareada, só por curiosidade já que nem é esse o foco do curso hehehehe.

2 respostas
solução

Oi Marco, tudo bem?

No nosso curso "Entity LinQ parte 1: Crie queries poderosas em C#", trabalhamos com a geração de classes a partir do banco de dados, nesta sequência:

https://cursos.alura.com.br/course/linq-c-sharp/task/21119

  1. abrimos um arquivo de "script DDL" (Data Definition Language), isto é, responsável por criar o banco de dados, as tabelas, colunas índices, chaves estrangeiras, etc., a partir de um script SQL.
  2. depois de criado o banco de dados, geramos o modelo (.edmx) com todos os objetos mapeados a partir dos objetos do banco de dados

Trabalhar com modelo num arquivo .edmx e útil quando já temos um banco de dados. Isso é chamado de "database first", isto é, primeiro temos o banco de dados, e só depois vamos criar o modelo. Nesse tipo de cenário, as alterações são feitas geralmente no banco de dados, e atualizadas no modelo quando necessário. Note que isso é o inverso do que fazemos no "domain model-first".

Acho preferível criar o modelo e só depois o banco de dados,.Porém nem sempre isso é possível. Se você não tem permissão para modificar o banco de dados, o jeito é criar o modelo a partir dele. Assim, você terá os benefícios do Entity Framework e das consultas LINQ num cenário "Database-First".

Perfeito Marcelo, eu fiz esse curso mas já faz um tempão... onde trabalho usamos apenas o conceito "domain model-first" por isso fiquei um pouco perdido, mas vou dar uma revisada no curso, muito obrigado pela explicação!