Implementação de Web API de Filmes com Entity Framework Core e MySql.
Projeto implementado em ASP.NET Core, Entity Framework Core e MySql (MySQL Workbench).
AutoMapper
AutoMapper.Extensions.Microsoft.DependencyInjection
Microsoft.EntityFrameworkCore
Microsoft.EntityFrameworkCore.Tools
MySql.EntityFrameworkCore
Swashbuckle.AspNetCore
Na pasta Data
encontram-se a classe de contexto para acesso à base de dados do projeto (FilmeContext
) e o subdiretório Dtos
. Essas classes DTO são mapeadas com AutoMapper
, que se encontra na pasta Profiles
.
Note que o mapeamento segue a lógica dos verbos HTTP (criação, recuperação e atualização).
public class FilmeProfile : Profile
{
public FilmeProfile()
{
CreateMap<CreateFilmeDto, Filme>();
CreateMap<Filme, ReadFilmeDto>();
CreateMap<UpdateFilmeDto, Filme>();
}
}
Para que o Entity Framework Core funcione corretamente é necessário criar uma base de dados no MySQL Workbench ou qualquer SGBD de sua preferência desde que haja suporte pelo ORM.
Depois disso, crie uma Connection String e adicione às configurações do projeto.
Para realizar a conexão no código atente-se para o seuinte snippet em Program.cs
:
var connectionString = builder.Configuration.GetConnectionString("DefaultConnection");
builder.Services.AddDbContext<FilmeContext>(opt => opt.UseMySQL(connectionString));
Onde DefaultConnection
pode ser qualquer outro nome.