ASP .NET Core - Scaffolding : criando Controllers e Views via linha de comando - II

 Neste artigo eu vou mostrar como criar Controllers e Views em um projeto ASP .NET Core via linha de comando.

Na primeira parte do artigo fizemos a engenharia reversa e obtivemos as classes das entidades e do contexto fazendo o Scaffolding usando a linha de comando da ferramenta EF Core Tools.

Vamos continuar agora mostrando como gerar o Controlador e as Views usando a ferramenta de linha de comando.

Recursos usados:

Preparando o ambiente para usar a linha de comando

Abra um terminal de comandos no seu ambiente. Eu estou usando o Windows PowerShell.

A seguir entre na pasta onde criamos o projeto no artigo anterior : cd AspCore_Scaffolding

Para poder ter acesso aos comandos da linha de comando para criar Controllers e Views em um projeto ASP .NET Core MVC precisamos referenciar o seguinte pacote:

1- Microsoft.VisualStudio.Web.CodeGenerators.Mvc   :  Geradores de código para ASP.NET Core MVC. Contém geradores de código para controladores MVC e Views.
2-
Microsoft.VisualStudio.Web.CodeGeneration.Design :  Ferramenta de geração de código para ASP.NET Core. Contém o comando dotnet-aspnet-codegenerator usado para gerar controladores e views.

Vamos instalar o primeiro pacote : dotnet add package Microsoft.VisualStudio.Web.CodeGenerators.Mvc

A seguir o segundo pacote deve ser incluido no arquivo de projeto em um <ItemGroup> como um  como um <DotNetCliToolReference> conforme abaixo:

Para concluir precisamos também incluir uma referência ao pacote Microsoft.VisualStudio.Web.CodeGeneration.Design como um packagereference.

Então digite o comando : dotnet add package Microsoft.VisualStudio.Web.CodeGeneration.Design

A seguir digite o comando : dotnet restore e a seguir dotnet build

Ao final nosso arquivo de projeto deverá conter as seguintes referências :

Muito bem. Não temos erros e todas as dependências estão restauradas. Podemos continuar...

Agora para saber se já temos acesso geradores de código para controladores MVC e Views e ao comando dotnet-aspnet-codegenerator digite: dotnet aspnet-codegenerator --help

Como vemos temos acesso aos comandos :  aspnet-codegenerator e suas opções e aos geradores para gerar :  area, controller, view e razorpage.

Gerando o controlador e as views na linha de comando

Agora vamos gerar o controlador e as views em nosso projeto ASP .NET Core MVC.

Vamos definir o nome do controlador e o arquivo de modelo e de contexto usados.

Com base nessas definições digite o comando:

dotnet aspnet-codegenerator controller -name ClientesController -m Clientes -dc EstudoContext --relativeFolderPath Controllers --useDefaultLayout

Entendendo o comando usado :

1- O comando : dotnet aspnet-codegenerator

2- O controller :  controller -name ClientesController

3- O model : -m Clientes

4- O contexto : -dc EstudoContext

5- A pasta usada para o Controlador: --relativeFolderPath Controllers

6- O leiaute usado para criar o arquivo: --useDefaultLayout

No processamento temos as mensagens mostrando a criação do Controlador ClientesControllers e das Views na pasta Views/Clientes.

Vamos abrir o projeto no VS Code e conferir o resultado:

1-  Controlador ClientesController criado na pasta Controllers

Como informamos o modelo de entidades usado e a classe de contexto foi gerado um controlador com os métodos Index, Details, Create, Delete e Edit.

2- Criação das Views na pasta Views/Clientes

Vemos as Views Index, Edit, Details, Delete e Create criadas na pasta Views/Clientes com o código Razor definido.

Muuito bem... conseguimos assim criar o controlador e respectiva Views em nosso projeto.

Para o projeto funcionar teremos que fazer ajustes no arquivo Startup.cs, nos métodos ConfigureServices e no arquivo appsettings.json, mas nosso objetivo foi cumprido.

Tá bom assim ou quer mais ???

Em outro artigo em breve vou abordar a criação dos demais templates usados na ferramenta de linha de comando.

(Disse Jesus) Não vos deixarei órfãos; voltarei para vós. João 14:18
 

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


José Carlos Macoratti