Olá pessoal,
Já utilizando Asp.Net Core ? Entity Framework Core ? Esta nova versão do EF Core está muito boa e para ajudar no processo de desenvolvimento, hoje vou falar da ferramenta EF Core PowerTools.
Mas em que esta ferramenta me ajuda ? Simples, com ela você pode pegar um banco existente e fazer engenharia reversa, o que significa gerar todas as classes do EntityFramerwork a partir do seu banco de dados. Produtividade!!!
Vale lembrar que para utilizar o EF Core você precisa do Visual Studio 2017.
Instalando o componente:
Vamos iniciar baixando o EF Core Powertools a partir deste endereço: https://github.com/ErikEJ/EFCorePowerTools/wiki
Uma dica: Até o momento que estou escrevendo este artigo, a versão padrão está com um bug na geração do modelo visual, então sugiro que você pegue a versão daily build.
O Powertools é uma extensão para o Visual Studio, então após o download é só clicar e instalar. Não esqueça de reiniciar o Visual Studio para concluir a instalação!
No meu caso tenho o Visual Studio 2017 Preview também.
Criando nosso projeto de exemplo:
Depois de instalado, vamos criar um projeto .Net Core Console:
Agora precisamos adicionar o EntityFramework Core ao nosso projeto. Vamos fazer isto usando o NuGet Package Manager Console, com o comando:
Install-Package Microsoft.EntityFrameworkCore.SqlServer
Agora podemos usar o EF Core PowerTools clicando com o botão direito do mouse no projeto, onde veremos o menu abaixo:
Vamos então escolher a opção Reverse Engineer e clicando no botão Add você pode escolher o banco de dados: (no meu exemplo vou utilizar o NorthWind):
Selecione as tabelas/views e clique OK:
Finalmente, você pode ajustar as configurações do seu modelo, como nome do Contexto, NameSpace, etc:
Feito isto, teremos nossas classes e o contexto no projeto:
Agora só utilizar, mas antes verifique o seu contexto, pois a string de conexão com o banco foi colocada lá no código (no meu exemplo NorthwindContext.cs), o que não é uma boa prática:
Um funcionalidade bem legal desta ferramenta é o digrama do banco, que você gera no menu de contexto:
Esta opção gera um arquivo .dgml com o diagrama:
Lebrando que esta ferramenta é open source e está no GitHub: https://github.com/ErikEJ/EFCorePowerTools
Abraços e até a próxima,
Carlos dos Santos.