Dotnet SLN |
Este artigo aplica-se a: ✔️ SDK do .NET Core 3.1 e versões posteriores
Designação
dotnet sln
- Lista ou modifica os projetos em um arquivo de solução .NET ou migra o arquivo para um arquivo de .slnx.
Sinopse
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
Descrição
O comando dotnet sln
fornece uma maneira conveniente de listar e modificar projetos em um arquivo de solução.
Criar um arquivo de solução
Para usar o comando dotnet sln
, o arquivo de solução já deve existir. Se você precisar criar um, use o comando dotnet new com o nome do modelo sln
.
O exemplo a seguir cria um arquivo .sln na pasta atual, com o mesmo nome da pasta:
dotnet new sln
O exemplo a seguir cria um arquivo .sln na pasta atual, com o nome de arquivo especificado:
dotnet new sln --name MySolution
O exemplo a seguir cria um arquivo .sln na pasta especificada, com o mesmo nome da pasta:
dotnet new sln --output MySolution
Argumentos
SOLUTION_FILE
O arquivo de solução a ser usado (um arquivo de .sln ou .slnx).
Se não for especificado, o comando procura no diretório atual um arquivo de .slnx .sln ou e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos de solução forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
Opções
-?|-h|--help
Imprime uma descrição de como usar o comando.
Comandos
Os seguintes comandos estão disponíveis:
list
Lista todos os projetos em um arquivo de solução.
Sinopse
dotnet sln list [-h|--help]
Argumentos
SOLUTION_FILE
O arquivo de solução a ser usado (um arquivo de .sln ou .slnx).
Se não for especificado, o comando procura no diretório atual um arquivo de .slnx .sln ou e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos de solução forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
Opções
-?|-h|--help
Imprime uma descrição de como usar o comando.
add
Adiciona um ou mais projetos ao arquivo de solução.
Sinopse
dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]
Argumentos
SOLUTION_FILE
O arquivo de solução a ser usado (um arquivo de .sln ou .slnx).
Se não for especificado, o comando procura no diretório atual um arquivo de .slnx .sln ou e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos de solução forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
PROJECT_PATH
O caminho para o projeto ou projetos a serem adicionados à solução. Shell Unix/Linux padrão de globbing expansões são processados corretamente pelo comando
dotnet sln
.Se
PROJECT_PATH
incluir pastas que contêm a pasta do projeto, essa parte do caminho será usada para criar pastas de solução. Por exemplo, os comandos a seguir criam uma solução commyapp
na pasta da soluçãofolder1/folder2
:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myapp
Você pode substituir esse comportamento padrão usando a opção
--in-root
ou-s|--solution-folder <PATH>
.
Opções
-?|-h|--help
Imprime uma descrição de como usar o comando.
--in-root
Coloca os projetos na raiz da solução, em vez de criar uma pasta de solução . Não pode ser usado com
-s|--solution-folder
.-s|--solution-folder <PATH>
A pasta de destino solução caminho ao qual adicionar os projetos. Não pode ser usado com
--in-root
.
remove
Remove um projeto ou vários projetos do arquivo de solução.
Sinopse
dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
Argumentos
SOLUTION_FILE
O arquivo de solução a ser usado (um arquivo de .sln ou .slnx).
Se não for especificado, o comando procura no diretório atual um arquivo de .slnx .sln ou e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos de solução forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
PROJECT_PATH
O caminho para o projeto ou projetos a serem removidos da solução. Shell Unix/Linux padrão de globbing expansões são processados corretamente pelo comando
dotnet sln
.
Opções
-?|-h|--help
Imprime uma descrição de como usar o comando.
migrate
Gera um arquivo de solução de .slnx a partir de um arquivo .sln.
Sinopse
dotnet sln [<SOLUTION_FILE>] migrate
dotnet sln [<SOLUTION_FILE>] migrate [-h|--help]
Argumentos
SOLUTION_FILE
O .sln arquivo de solução a ser migrado.
Se não for especificado, o comando procura um arquivo .sln no diretório atual e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos .sln forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
Se você especificar um arquivo de .slnx em vez de um arquivo .sln, ou se um arquivo de .slnx com o mesmo nome de arquivo (menos a extensão .sln) já existir no diretório, o comando falhará.
Opções
-?|-h|--help
Imprime uma descrição de como usar o comando.
Exemplos
Liste os projetos em uma solução:
dotnet sln todo.slnx list
Adicione um projeto C# a uma solução:
dotnet sln add todo-app/todo-app.csproj
Remova um projeto C# de uma solução:
dotnet sln remove todo-app/todo-app.csproj
Adicione vários projetos C# à raiz de uma solução:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
Adicione vários projetos C# a uma solução:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj
Remova vários projetos C# de uma solução:
dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csproj
Adicione vários projetos C# a uma solução usando um padrão globbing (somente Unix/Linux):
dotnet sln todo.slnx add **/*.csproj
Adicione vários projetos C# a uma solução usando um padrão de globbing (somente Windows PowerShell):
dotnet sln todo.slnx add (ls -r **/*.csproj)
Remova vários projetos C# de uma solução usando um padrão globbing (somente Unix/Linux):
dotnet sln todo.slnx remove **/*.csproj
Remova vários projetos C# de uma solução usando um padrão de globbing (somente Windows PowerShell):
dotnet sln todo.slnx remove (ls -r **/*.csproj)
Gere um arquivo de .slnx a partir de um arquivo .sln:
dotnet sln todo.sln migrate
Crie uma solução, um aplicativo de console e duas bibliotecas de classes. Adicione os projetos à solução e use a opção
--solution-folder
dedotnet sln
para organizar as bibliotecas de classes em uma pasta de solução.dotnet new sln -n mysolution dotnet new console -o myapp dotnet new classlib -o mylib1 dotnet new classlib -o mylib2 dotnet sln mysolution.slnx add myapp\myapp.csproj dotnet sln mysolution.slnx add mylib1\mylib1.csproj --solution-folder mylibs dotnet sln mysolution.slnx add mylib2\mylib2.csproj --solution-folder mylibs
A captura de tela a seguir mostra o resultado no Visual Studio 2019 Solution Explorer: