Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Este artigo aplica-se a: ✔️ .NET 6 SDK 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 .slnx na pasta atual, com o mesmo nome da pasta:
dotnet new sln
O exemplo a seguir cria um arquivo .slnx na pasta atual, com o nome de arquivo especificado:
dotnet new sln --name MySolution
O exemplo a seguir cria um arquivo .slnx na pasta especificada, com o mesmo nome da pasta:
dotnet new sln --output MySolution
Observação
No .NET 9 e versões anteriores, dotnet new sln cria um arquivo .sln em vez de um arquivo .slnx .
Argumentos
SOLUTION_FILEO 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|--helpImprime 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_FILEO arquivo de solução (arquivo .sln ou .slnx ) ou filtro de solução (arquivo .slnf ) a ser usado.
Se não for especificado, o comando procura um arquivo .sln, .slnx ou .slnf no diretório atual e, se encontrar exatamente um, usa esse arquivo. Se vários arquivos de solução ou filtros forem encontrados, o usuário será solicitado a especificar um arquivo explicitamente. Se nenhum for encontrado, o comando falhará.
(Suporte para arquivos .slnf foi adicionado no .NET SDK 9.0.3xx.)
Opções
-
-?|-h|--helpImprime 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_FILEO 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_PATHO 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_PATHincluir 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 commyappna pasta da soluçãofolder1/folder2:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myappVocê pode substituir esse comportamento padrão usando a opção
--in-rootou-s|--solution-folder <PATH>.
Opções
-
-?|-h|--helpImprime uma descrição de como usar o comando.
--in-rootColoca 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_NAME> [<PROJECT_PATH|PROJECT_NAME>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
Argumentos
SOLUTION_FILEO 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_PATHouPROJECT_NAMEO caminho ou o nome do 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.Se um nome de projeto for fornecido em vez de um caminho, o projeto na solução que corresponde ao nome, independentemente de seu caminho, será removido. Se mais de um projeto correspondente for encontrado na solução, o comando errará. Omita a extensão do arquivo de projeto no nome. (Suporte para remover projetos por nome foi adicionado no .NET 10.)
Opções
-
-?|-h|--helpImprime 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_FILEO .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|--helpImprime uma descrição de como usar o comando.
Exemplos
Liste os projetos em uma solução:
dotnet sln todo.slnx listAdicione um projeto C# a uma solução:
dotnet sln add todo-app/todo-app.csprojRemova um projeto C# de uma solução:
dotnet sln remove todo-app/todo-app.csprojAdicione 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-rootAdicione vários projetos C# a uma solução:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csprojRemova vários projetos C# de uma solução:
dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csprojAdicione vários projetos C# a uma solução usando um padrão globbing (somente Unix/Linux):
dotnet sln todo.slnx add **/*.csprojAdicione 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 **/*.csprojRemova 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 migrateCrie uma solução, um aplicativo de console e duas bibliotecas de classes. Adicione os projetos à solução e use a opção
--solution-folderdedotnet slnpara 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 mylibsA captura de tela a seguir mostra o resultado no Visual Studio 2019 Solution Explorer: