Entity Framework - Code First Approach
O Entity Framework fornece três abordagens para criar um modelo de entidade e cada uma tem seus próprios prós e contras.
- Código Primeiro
- Banco de dados primeiro
- Modelo primeiro
Neste capítulo, descreveremos brevemente a primeira abordagem do código. Alguns desenvolvedores preferem trabalhar com o Designer no Código, enquanto outros preferem apenas trabalhar com seu código. Para esses desenvolvedores, o Entity Framework tem um fluxo de trabalho de modelagem conhecido como Code First.
O fluxo de trabalho de modelagem do Code First visa um banco de dados que não existe e o Code First o criará.
Ele também pode ser usado se você tiver um banco de dados vazio e, em seguida, Code First adicionará novas tabelas a ele.
Code First permite que você defina seu modelo usando classes C # ou VB.Net.
A configuração adicional pode ser executada opcionalmente usando atributos em suas classes e propriedades ou usando uma API fluente.
Por que codificar primeiro?
O Code First é realmente composto de um conjunto de peças de um quebra-cabeça. Em primeiro lugar estão suas classes de domínio.
As classes de domínio não têm nada a ver com o Entity Framework. Eles são apenas os itens do domínio do seu negócio.
Entity Framework, então, tem um contexto que gerencia a interação entre essas classes e seu banco de dados.
O contexto não é específico para Code First. É um recurso do Entity Framework.
Code First inclui um construtor de modelo que inspeciona suas classes que o contexto está gerenciando e, em seguida, usa um conjunto de regras ou convenções para determinar como essas classes e os relacionamentos descrevem um modelo e como esse modelo deve ser mapeado para seu banco de dados.
Tudo isso acontece em tempo de execução. Você nunca verá este modelo, está apenas na memória.
O Code First também tem a capacidade de usar esse modelo para criar um banco de dados, se você quiser.
Ele também pode atualizar o banco de dados se o modelo mudar, usando um recurso chamado Code First Migrations.
Configuração de ambiente
Para começar a trabalhar com a abordagem EF Code First, você precisa das seguintes ferramentas instaladas em seu sistema.
- Visual Studio 2013 (.net framework 4.5.2) ou versão posterior.
- MS SQL Server 2012 ou posterior.
- Entity Framework via pacote NuGet.
Instale EF via pacote NuGet
Step 1 - Primeiro, crie o aplicativo de console em Arquivo → Novo → Projeto ...
Step 2 - Selecione Windows no painel esquerdo e Aplicativo de console no painel de modelo.
Step 3 - Digite EFCodeFirstDemo como o nome e selecione OK.
Step 4 - Clique com o botão direito em seu projeto no explorador de soluções e selecione Gerenciar Pacotes NuGet…
Isso abrirá o Gerenciador de pacotes NuGet e procurará EntityFramework. Isso pesquisará todos os pacotes relacionados ao Entity Framework.
Step 5- Selecione EntityFramework e clique em Instalar. Ou, no menu Ferramentas, clique em Gerenciador de Pacotes NuGet e em Console do Gerenciador de Pacotes. Na janela do Console do gerenciador de pacotes, digite o seguinte comando: Install-Package EntityFramework.
Quando a instalação for concluída, você verá a seguinte mensagem na janela de saída “Instalado com sucesso 'EntityFramework 6.1.2' para EFCodeFirstDemo”.
Após a instalação, EntityFramework.dll será incluído em seu projeto, conforme mostrado na imagem a seguir.
Agora você está pronto para começar a trabalhar na abordagem Code First.