dotnet sln
Questo articolo si applica a: ✔️ .NET Core 3.1 SDK e versioni successive
Nome
dotnet sln
- Elenca o modifica i progetti in un file di soluzione .NET.
Riepilogo
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
Descrizione
Il comando dotnet sln
offre un modo pratico per elencare e modificare i progetti in un file di soluzione.
Creare un file di soluzione
Per usare il comando dotnet sln
, il file di soluzione deve essere già esistente. Se è necessario crearne uno, usare il comando dotnet new con il nome del modello sln
.
Nell'esempio seguente viene creato un file .sln nella cartella corrente, con lo stesso nome della cartella:
dotnet new sln
Nell'esempio seguente viene creato un file .sln nella cartella corrente, con il nome del file specificato:
dotnet new sln --name MySolution
Nell'esempio seguente viene creato un file .sln nella cartella specificata, con lo stesso nome della cartella:
dotnet new sln --output MySolution
Argomenti
SOLUTION_FILE
File di soluzione da usare. Se questo argomento viene omesso, il comando ne cerca uno nella directory corrente. Se non trova alcun file di soluzione o più file di soluzione, il comando ha esito negativo.
Opzioni
-?|-h|--help
Stampa una descrizione dell'uso del comando.
Comandi
list
Elenca tutti i progetti in un file di soluzione.
Riepilogo
dotnet sln list [-h|--help]
Argomenti
SOLUTION_FILE
File di soluzione da usare. Se questo argomento viene omesso, il comando ne cerca uno nella directory corrente. Se non trova nessuno o più file di soluzione, il comando ha esito negativo.
Opzioni
-?|-h|--help
Stampa una descrizione dell'uso del comando.
add
Aggiunge uno o più progetti al file di soluzione.
Riepilogo
dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]
Argomenti
SOLUTION_FILE
File di soluzione da usare. Se non è specificato, il comando ne cerca uno nella directory corrente e se sono presenti più file di soluzione la ricerca ha esito negativo.
PROJECT_PATH
Percorso del progetto o dei progetti da aggiungere alla soluzione. Le espansioni del criterio GLOBdella shell Unix/Linux vengono elaborate correttamente dal comando
dotnet sln
.Se
PROJECT_PATH
include cartelle che contengono la cartella del progetto, tale parte del percorso viene usata per creare le cartelle della soluzione. Ad esempio, i comandi seguenti creano una soluzione che includemyapp
nella cartella della soluzionefolder1/folder2
:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myapp
È possibile eseguire l'override di questo comportamento predefinito usando
--in-root
o l'opzione-s|--solution-folder <PATH>
.
Opzioni
-?|-h|--help
Stampa una descrizione dell'uso del comando.
--in-root
Inserisce i progetti nella radice della soluzione anziché creare una cartella della soluzione. Non può essere usato con
-s|--solution-folder
.-s|--solution-folder <PATH>
Percorso della cartella della soluzione di destinazione a cui aggiungere i progetti. Non può essere usato con
--in-root
.
remove
Rimuove uno o più progetti dal file di soluzione.
Riepilogo
dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
Argomenti
SOLUTION_FILE
File di soluzione da usare. Se non è specificato, il comando ne cerca uno nella directory corrente e se sono presenti più file di soluzione la ricerca ha esito negativo.
PROJECT_PATH
Percorso del progetto o dei progetti da rimuovere dalla soluzione. Le espansioni del criterio GLOBdella shell Unix/Linux vengono elaborate correttamente dal comando
dotnet sln
.
Opzioni
-?|-h|--help
Stampa una descrizione dell'uso del comando.
Esempi
Elencare i progetti di una soluzione:
dotnet sln todo.sln list
Aggiungere un progetto C# a una soluzione:
dotnet sln add todo-app/todo-app.csproj
Rimuovere un progetto C# da una soluzione:
dotnet sln remove todo-app/todo-app.csproj
Aggiungere più progetti C# alla radice di una soluzione:
dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
Aggiungere più progetti C# a una soluzione:
dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj
Rimuovere più progetti C# da una soluzione:
dotnet sln todo.sln remove todo-app/todo-app.csproj back-end/back-end.csproj
Aggiungere più progetti C# a una soluzione usando un criterio GLOB (solo Unix/Linux):
dotnet sln todo.sln add **/*.csproj
Aggiungere più progetti C# a una soluzione usando un criterio GLOB (solo Windows PowerShell):
dotnet sln todo.sln add (ls -r **/*.csproj)
Rimuovere più progetti C# da una soluzione usando un criterio GLOB (solo Unix/Linux):
dotnet sln todo.sln remove **/*.csproj
Rimuovere più progetti C# da una soluzione usando un criterio GLOB (solo Windows PowerShell):
dotnet sln todo.sln remove (ls -r **/*.csproj)
Creare una soluzione, un'app console e due librerie di classi. Aggiungere i progetti alla soluzione e usare l’
--solution-folder
opzione didotnet sln
per organizzare le librerie di classi in una cartella della soluzione.dotnet new sln -n mysolution dotnet new console -o myapp dotnet new classlib -o mylib1 dotnet new classlib -o mylib2 dotnet sln mysolution.sln add myapp\myapp.csproj dotnet sln mysolution.sln add mylib1\mylib1.csproj --solution-folder mylibs dotnet sln mysolution.sln add mylib2\mylib2.csproj --solution-folder mylibs
Lo screenshot seguente mostra il risultato in Esplora soluzioni di Visual Studio 2019:
Vedi anche
- repository GitHub dotnet/sdk (origine dell'interfaccia della riga di comando .NET)