dotnet sln
Den här artikeln gäller för: ✔️ .NET Core 3.1 SDK och senare versioner
Namn
dotnet sln
– Visar eller ändrar projekten i en .NET-lösningsfil eller migrerar filen till en .slnx- fil.
Sammanfattning
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
Beskrivning
Kommandot dotnet sln
är ett praktiskt sätt att lista och ändra projekt i en lösningsfil.
Skapa en lösningsfil
Om du vill använda kommandot dotnet sln
måste lösningsfilen redan finnas. Om du behöver skapa en använder du kommandot dotnet new med sln
mallnamn.
I följande exempel skapas en .sln fil i den aktuella mappen med samma namn som mappen:
dotnet new sln
I följande exempel skapas en .sln fil i den aktuella mappen med det angivna filnamnet:
dotnet new sln --name MySolution
I följande exempel skapas en .sln fil i den angivna mappen med samma namn som mappen:
dotnet new sln --output MySolution
Argument
SOLUTION_FILE
Lösningsfilen som ska användas (antingen en .sln- eller .slnx--fil).
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln eller .slnx- fil och använder filen om den hittar exakt en. Om flera lösningsfiler hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
Alternativ
-?|-h|--help
Skriver ut en beskrivning av hur du använder kommandot.
Kommandon
Följande kommandon är tillgängliga:
list
Visar en lista över alla projekt i en lösningsfil.
Sammanfattning
dotnet sln list [-h|--help]
Argument
SOLUTION_FILE
Lösningsfilen som ska användas (antingen en .sln- eller .slnx--fil).
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln eller .slnx- fil och använder filen om den hittar exakt en. Om flera lösningsfiler hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
Alternativ
-?|-h|--help
Skriver ut en beskrivning av hur du använder kommandot.
add
Lägger till ett eller flera projekt i lösningsfilen.
Sammanfattning
dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]
Argument
SOLUTION_FILE
Lösningsfilen som ska användas (antingen en .sln- eller .slnx--fil).
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln eller .slnx- fil och använder filen om den hittar exakt en. Om flera lösningsfiler hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
PROJECT_PATH
Sökvägen till projektet eller projekten som ska läggas till i lösningen. Unix/Linux-gränssnittet globbningsmönster expansioner bearbetas korrekt av kommandot
dotnet sln
.Om
PROJECT_PATH
innehåller mappar som innehåller projektmappen används den delen av sökvägen för att skapa lösningsmappar. Följande kommandon skapar till exempel en lösning medmyapp
i lösningsmappenfolder1/folder2
:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myapp
Du kan åsidosätta det här standardbeteendet med hjälp av alternativet
--in-root
eller-s|--solution-folder <PATH>
.
Alternativ
-?|-h|--help
Skriver ut en beskrivning av hur du använder kommandot.
--in-root
Placerar projekten i lösningens rot i stället för att skapa en lösningsmapp. Det går inte att använda med
-s|--solution-folder
.-s|--solution-folder <PATH>
Målmappen lösning sökväg att lägga till projekten i. Det går inte att använda med
--in-root
.
remove
Tar bort ett projekt eller flera projekt från lösningsfilen.
Sammanfattning
dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
Argument
SOLUTION_FILE
Lösningsfilen som ska användas (antingen en .sln- eller .slnx--fil).
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln eller .slnx- fil och använder filen om den hittar exakt en. Om flera lösningsfiler hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
PROJECT_PATH
Sökvägen till projektet eller projekten som du vill ta bort från lösningen. Unix/Linux-gränssnittet globbningsmönster expansioner bearbetas korrekt av kommandot
dotnet sln
.
Alternativ
-?|-h|--help
Skriver ut en beskrivning av hur du använder kommandot.
migrate
Genererar en .slnx- lösningsfil från en .sln fil.
Sammanfattning
dotnet sln [<SOLUTION_FILE>] migrate
dotnet sln [<SOLUTION_FILE>] migrate [-h|--help]
Argument
SOLUTION_FILE
Den .sln lösningsfil som ska migreras.
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln fil och använder filen om den hittar exakt en. Om flera .sln filer hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
Om du anger en .slnx- fil i stället för en .sln fil, eller om det redan finns en .slnx- fil med samma filnamn (minus .sln filnamnstillägget) i katalogen, misslyckas kommandot.
Alternativ
-?|-h|--help
Skriver ut en beskrivning av hur du använder kommandot.
Exempel
Lista projekten i en lösning:
dotnet sln todo.slnx list
Lägg till ett C#-projekt i en lösning:
dotnet sln add todo-app/todo-app.csproj
Ta bort ett C#-projekt från en lösning:
dotnet sln remove todo-app/todo-app.csproj
Lägg till flera C#-projekt i roten för en lösning:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
Lägg till flera C#-projekt i en lösning:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj
Ta bort flera C#-projekt från en lösning:
dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csproj
Lägg till flera C#-projekt i en lösning med hjälp av ett globbande mönster (endast Unix/Linux):
dotnet sln todo.slnx add **/*.csproj
Lägg till flera C#-projekt i en lösning med hjälp av ett globbande mönster (endast Windows PowerShell):
dotnet sln todo.slnx add (ls -r **/*.csproj)
Ta bort flera C#-projekt från en lösning med hjälp av ett globbande mönster (endast Unix/Linux):
dotnet sln todo.slnx remove **/*.csproj
Ta bort flera C#-projekt från en lösning med hjälp av ett globbande mönster (endast Windows PowerShell):
dotnet sln todo.slnx remove (ls -r **/*.csproj)
Generera en .slnx- fil från en .sln fil:
dotnet sln todo.sln migrate
Skapa en lösning, en konsolapp och två klassbibliotek. Lägg till projekten i lösningen och använd alternativet
--solution-folder
dotnet sln
för att organisera klassbiblioteken i en lösningsmapp.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
Följande skärmbild visar resultatet i Visual Studio 2019 Solution Explorer:
Se även
- dotnet/sdk GitHub-lagringsplats (.NET CLI-källa)