Skip to content
Douglas Fernandes Pereira da Silva Jr edited this page May 24, 2019 · 5 revisions

Acesso a Dados

Neste exemplo será demonstrada o acesso a dados através do Entity Framework, utilizar Code First e Data Base First.

Começamos este passo na branch topicos/t1/p4.

Passo a Passo 1 - Entity Framework - DataBase First

Neste caso, vamos fazer o Entity Framework ler nossa estrutura de banco de dados, e gera toda as nossas classes de acesso, e entidades.

Projeto AcessoDados.DAL

  1. Vamos começar no projeto AcessoDados.DAL.
  2. Através do NuGet dentro do Visual Studio, adicione as referências:
  • Microsoft.EntityFrameworkCore.SqlServer
  • Microsoft.EntityFrameworkCore.Tools
  • Microsoft.EntityFrameworkCore.Design
  1. Adicione a pasta EntityDBFirst, aonde iremos criar os nossos arquivos.
  2. Abra o terminal dentro do Visual Studio: Tools -> _ NuGet Package Manager_ -> Package Manager Console.
  3. Mude o Default project: Para AcessoDados.DAL.
  4. Digite e Execute o comando :
Scaffold-DbContext "<SUA CONEXÂO AQUI>" Microsoft.EntityFrameworkCore.SqlServer -OutputDir EntityDBFirst

Importante: Será utilizada uma base SQL Server para os teste a partir deste ponto. Para construção de sua própria base de dados, que pode ser feita em SQL Server Express, utilize os seguintes arquivos: Criação da estrutura do banco e Massa de dados Inícial.

Projeto AcessoDados.ConsoleApp

  1. Vamos alterar o projeto AcessoDados.ConsoleApp.
  2. Vamos alterar o arquivo Program.cs, para instânciar o objeto de conexão com o banco, e exibir os resultado. DIFF alterações Arquivo final.

Branch final topicos/t2/p1. Para ver as alterações completas DIFF das alterações.

Passo a Passo 2 - Entity Framework - Code First

Projeto AcessoDados.DAL

  1. Vamos começar no projeto AcessoDados.DAL.

  2. Adicione a pasta EntityCodeFirst.

  3. Adicione a pasta Modelos dentro da pasta EntityCodeFirst.

  4. Dentro da pasta EntityCodeFirst.Modelos, crie uma nova classe EntidadeBancoBase. Arquivo final.

  5. Dentro da pasta EntityCodeFirst.Modelos, crie uma nova classe Categoria. Arquivo final.

  6. Dentro da pasta EntityCodeFirst.Modelos, crie uma nova classe Responsavel. Arquivo final.

  7. Dentro da pasta EntityCodeFirst.Modelos, crie uma nova classe Video. Arquivo final.

  8. Dentro da pasta EntityCodeFirst.Modelos, crie uma nova classe VideoCategoria. Arquivo final.

  9. Dentro da pasta EntityCodeFirst, crie uma nova classe CodeFirstDBContext. Arquivo final. Importante: Será utilizado o MSSQLLocalDB, um banco de dados local para testes doc, desta forma será possível executar a aplicação sem precisar instalar um banco de dados.

  10. Abra o Package Manager Console, mude o Default project: Para AcessoDados.DAL. execute os comandos:

    Add-Migration InitialCreate -Context CodeFirstDBContext

    Este comando irá criar a pasta Migrations, com os seguintes arquivos dentro: 20190524173538_InitialCreate.cs ,20190524173538_InitialCreate.Designer.cs e CodeFirstDBContextModelSnapshot.cs.

  11. Abra o Package Manager Console, mude o Default project: Para AcessoDados.DAL. execute os comandos:

    Update-Database InitialCreate -Context CodeFirstDBContext

    Este comando irá criar as tabelas no banco de dados.

  12. Para mais informações sobre migrations Clique aqui

Projeto AcessoDados.ConsoleApp

  1. Vamos alterar o projeto AcessoDados.ConsoleApp.
  2. Vamos alterar o arquivo Program.cs, para instânciar o objeto de conexão com o banco, e exibir os resultado. DIFF alterações Arquivo final.

Branch final topicos/t1/p4. Para ver as alterações completas DIFF das alterações.

Clone this wiki locally