Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln gäller för: ✔️ .NET 6 SDK och senare versioner
Namn
dotnet sln– Visar eller ändrar projekten i en .NET lösningsfil eller lösningsfilter, eller migrerar en .sln fil till en .slnx-fil.
Sammanfattning
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
Beskrivning
Kommandot dotnet sln ger ett bekvämt sätt att lista och ändra projekt i en lösningsfil eller lösningsfilter.
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 .slnx-fil i den aktuella mappen med samma namn som mappen:
dotnet new sln
I följande exempel skapas en .slnx-fil i den aktuella mappen med det angivna filnamnet:
dotnet new sln --name MySolution
I följande exempel skapas en .slnx-fil i den angivna mappen med samma namn som mappen:
dotnet new sln --output MySolution
Anmärkning
I .NET 9 och tidigare versioner dotnet new sln skapar en .sln fil i stället för en .slnx-fil .
Skapa ett lösningsfilter
Från och med .NET 11 kan du skapa ett lösningsfilter (.slnf-fil) med mallenslnf:
dotnet new slnf --name MyApp.slnf
Argument
SOLUTION_FILELösningsfilen (.sln - eller .slnx-filen ) eller lösningsfiltret (.slnf-fil ) som ska användas.
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln-, .slnx- eller .slnf-fil och använder filen om den hittar exakt en. Om flera lösningsfiler eller filter hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
Alternativ
-
-?|-h|--helpSkriver 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_FILELösningsfilen (.sln - eller .slnx-filen ) eller lösningsfiltret (.slnf-fil ) som ska användas.
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln-, .slnx- eller .slnf-fil och använder filen om den hittar exakt en. Om flera lösningsfiler eller filter hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
(Stöd för .slnf-filer lades till i .NET SDK 9.0.3xx.)
Alternativ
-
-?|-h|--helpSkriver 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_FILELösningsfilen (.sln - eller .slnx-filen ) eller lösningsfiltret (.slnf-fil ) som ska användas.
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln-, .slnx- eller .slnf-fil och använder filen om den hittar exakt en. Om flera lösningsfiler eller filter hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
(Stöd för .slnf-filer lades till i .NET 11.)
PROJECT_PATHSökvägen till projektet eller projekten som ska läggas till i lösningen eller lösningsfiltret. Unix/Linux-gränssnittet globbningsmönster expansioner bearbetas korrekt av kommandot
dotnet sln. Lösningsfilter stöder--in-rootinte alternativen eller-s|--solution-folder.Om
PROJECT_PATHinnehå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 medmyappi lösningsmappenfolder1/folder2:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myappDu kan åsidosätta det här standardbeteendet med hjälp av alternativet
--in-rooteller-s|--solution-folder <PATH>.
Alternativ
-
-?|-h|--helpSkriver ut en beskrivning av hur du använder kommandot.
--in-rootPlacerar 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_NAME> [<PROJECT_PATH|PROJECT_NAME>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
Argument
SOLUTION_FILELösningsfilen (.sln - eller .slnx-filen ) eller lösningsfiltret (.slnf-fil ) som ska användas.
Om det är ospecificerat söker kommandot i den aktuella katalogen efter en .sln-, .slnx- eller .slnf-fil och använder filen om den hittar exakt en. Om flera lösningsfiler eller filter hittas uppmanas användaren att uttryckligen ange en fil. Om inget hittas misslyckas kommandot.
(Stöd för .slnf-filer lades till i .NET 11.)
PROJECT_PATHellerPROJECT_NAMESökvägen till eller namnet på projektet eller projekten som ska avlägsnas från lösnings- eller lösningsfiltret. Unix/Linux-gränssnittet globbningsmönster expansioner bearbetas korrekt av kommandot
dotnet sln.Om ett projektnamn anges i stället för en sökväg tas projektet i lösningen som matchar namnet, oavsett sökväg, bort. Om mer än ett matchande projekt hittas i lösningen felar kommandot ut. Utelämna projektfiltillägget i namnet. (Stöd för att ta bort projekt med namn lades till i .NET 10.)
Alternativ
-
-?|-h|--helpSkriver 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_FILEDen .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|--helpSkriver ut en beskrivning av hur du använder kommandot.
Exempel
Lista projekten i en lösning:
dotnet sln todo.slnx listSkapa ett lösningsfilter, lägg till ett projekt, lista projekten och ta bort projektet:
dotnet new sln --name MyApp dotnet sln MyApp.slnx add src/Lib/Lib.csproj dotnet new slnf --name MyApp.slnf dotnet sln MyApp.slnf add src/Lib/Lib.csproj dotnet sln MyApp.slnf list dotnet sln MyApp.slnf remove src/Lib/Lib.csprojLägg till ett C#-projekt i en lösning:
dotnet sln add todo-app/todo-app.csprojTa bort ett C#-projekt från en lösning:
dotnet sln remove todo-app/todo-app.csprojLä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-rootLägg till flera C#-projekt i en lösning:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csprojTa bort flera C#-projekt från en lösning:
dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csprojLä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 **/*.csprojLä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 **/*.csprojTa 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 migrateSkapa en lösning, en konsolapp och två klassbibliotek. Lägg till projekten i lösningen och använd alternativet
--solution-folderdotnet slnfö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 mylibsFöljande skärmbild visar resultatet i Visual Studio 2019 Prieskumník riešení:
Se även
- dotnet/sdk GitHub-lagringsplats (.NET CLI-källa)