NET CLI - Criando uma solução com múltiplos projetos


 Aprenda como criar uma solução com múltiplos projetos usando a ferramenta de linha de comando NET CLI.

A NET CLI ou ferramenta de linha de comando .NET Core, é uma ferramenta para criar e gerenciar projetos e soluções em ambiente multiplataforma para aplicações .NET.

Por padrão, a ferramenta CLI é instalada lado a lado para que várias versões das ferramentas da CLI possam coexistir em um único computador.

A estrutura de comando NET CLI consiste no driver : dotnet e possivelmente de opções e argumentos de comando. É possível ver esse padrão na maioria das operações de CLI, como ao criar um novo aplicativo de console e executá-lo a partir da linha de comando.

O driver é chamado dotnet e tem duas responsabilidades, executar um aplicativo dependente do framework ou executar um comando.

Alguns do comandos mais usados são :

Este artigo mostra como gerenciar projetos e soluções usando os recursos do .NET Core SDK 2.2 para os cenários mais comuns.

Os comandos NET CLI podem ser executados no Windows, MacOS e no Linux, e, neste artigo eu vou mostrar a execução no ambiente Linux usando o Ubuntu 18.04.

Recursos usados:

Verificando a versão da .NET CLI

Para exibir a versão da CLI instalada digite o comando : dotnet --version

Será exibido a vesão do SDK .NET Core do seu ambiente.

Para obter mais informações use o comando : dotnet --info

Criando uma solução

Crie uma pasta no seu ambiente onde deseja armazenar a solução e os projetos. Para este exemplo eu vou criar a pasta demo e a seguir entrar na pasta:

Vamos agora criar uma solução chamada AppWeb digitando o comando : dotnet new sln -o AppWeb

Vemos que foi criada a pasta AppWeb e nesta pasta o arquivo AppWeb.sln.

Temos assim um arquivo do tipo Solution(sln).

Criando três projetos

Vamos agora criar 3 projetos :

Vamos então emitir os comandos a seguir:

Temos assim 3 projetos e uma solução criados em 4 pastas dentro da pasta demo :

Incluindo os projetos na solução

Vamos agora incluir cada um dos projetos na solução criada.

Entre na pasta AppWeb: cd AppWeb

Digite o comando: sudo dotnet sln AppWeb.sln add ../AppWebClienteMVC/AppWeb.ClienteMVC.csproj

Este comando vai incluir o projeto AppWeb.ClienteMVC.csproj na solução.

Agora repita o comando para os demais projetos:

sudo dotnet sln AppWeb.sln add ../AppWebApi/AppWeb.Api.csproj

sudo dotnet sln AppWeb.sln add ../AppWebDataAccess/AppWeb.DataAccess.csproj

Nota: Poderiamos ter emitido um único comando incluindo os 3 projetos na solução.

Ao final teremos os 3 projetos incluídos na solução. Podemos constatar isso exibindo o conteúdo do arquivo AppWeb.sln :  cat AppWeb.sln

Gerencia referências no projeto

Precisamos agora incluir as referências dos projetos na solução. Para o nosso exemplo temos que:

1- O projeto MVC possui uma referência ao projeto Web API;

dotnet add ../AppWeb.ClienteMVC/AppWeb.ClienteMVC.csproj reference ../AppWeb.Api/AppWeb.Api.csproj

2- O projeto Web API possui uma referência ao projeto DataAccess;

dotnet add ../AppWeb.Api/AppWeb.Api.csproj reference ../AppWeb.DataAccess/AppWeb.DataAccess.csproj

Abrindo a solução no Visual Studio Code e exibindo o conteúdo dos arquivos .csproj para os projetos veremos as referências conforme mostradas nas figuras a seguir:

1- Projeto AppWeb.ClienteMVC.csproj

2- Projeto AppWeb.Api.csproj

Temos assim uma solução contendo 3 projetos e suas referências e podemos inclusive abrir o projeto no Visual Studio Community 2019.

Assim, de forma simples e descomplicada a ferramenta de linha de comando .NET pode ser usada para gerenciar projetos, soluções, dependências, referências, fazer o deploy, publicar, etc.

"Louvai ao SENHOR, porque ele é bom; porque a sua benignidade dura para sempre.
Louvai ao Deus dos deuses; porque a sua benignidade dura para sempre.
Louvai ao Senhor dos senhores; porque a sua benignidade dura para sempre."
Salmos 136:1-3

Referências:


José Carlos Macoratti