Como criar uma API com EntityFramework e SQL Server
Nathan Silva
Posted on March 9, 2024
Neste artigo irei mostrar como criar uma API simples utilizando EntityFramework com SQL server.
Preparando o ambiente
Vamos começar criando o projeto. Primeira coisa a ser feita é criar um projeto do tipo ASP.NET Core Web API.
Com o projeto criado a gente já pode testar com o Swagger uma das rotas padrões.
Pra esse tutorial a gente já vai fazer uma coisa mais "next level". Vamos dividir as nossas camadas de dados em API, DAL, BLL e Entity. Com isso vamos adicionar esses 3 projetos com o tipo Class.Library.
Instalando dependências
Agora é hora de utilizarmos o Nuget para adicionar alguns pacotes ao nosso projeto de DAL e API(futuramente os outros projetos também podem precisar desses pacotes). Tools > Nuget package manager > Manage package nuget for solution.
Ao tentar instalar, será solicitado outros pacotes, ai é só aceitar tudo.
Estruturando o projeto com classes
Agora que já temos nossas dependências instaladas, vamos criar uma classe na DAL que irá herdar o DbContext e fazer as ações necessárias.
Você vai notar que já tem algumas configurações do modelbuilder, mas eu estou basicamente informando quais vão ser os campos da minha tabela. De resto é tudo igual. Inclusive, essa é a minha classe Pessoa que foi criada no projeto de Entity.
Criando a conexão
No arquivo appSettings.json do projeto Asp.Net insera a string de conexão que leverá o nosso banco
"StringConnection" : "server=(local)\\SQL2019;database=vrsolicitacoes;integrated security=true;trustservercertificate=true"
Logo após isso, iremos até o Program.cs informar que utilizaremos esse caminho para usar o SqlServer.
Migrations
Agora vamos criar o nosso banco utilizando migration. Lá no Package Manager Console digite:
Add-Migration "Nome da migration aqui"
Depois disso é só rodar o seguinte comando
Update-Database
Nota
Se der o erro apresentado abaixo, basta trocar o projeto target para aquele que estiver com a classe que herda do dbContext.
Your target project '' doesn't match your migrations assembly 'DAL'. Either change your target project or change your migrations assembly.
Change your migrations assembly by using DbContextOptionsBuilder. E.g. options.UseSqlServer(connection, b => b.MigrationsAssembly("ApiVrSolicitacoes")). By default, the migrations assembly is the assembly containing the DbContext.
Change your target project to the migrations project by using the Package Manager Console's Default project drop-down list, or by executing "dotnet ef" from the directory containing the migrations project.
Posted on March 9, 2024
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.