Hendelser
17. mars, 21 - 21. mars, 10
Bli med i meetup-serien for å bygge skalerbare AI-løsninger basert på virkelige brukstilfeller med andre utviklere og eksperter.
Registrer deg nåDenne nettleseren støttes ikke lenger.
Oppgrader til Microsoft Edge for å dra nytte av de nyeste funksjonene, sikkerhetsoppdateringene og den nyeste tekniske støtten.
This article applies to: ✔️ .NET Core 3.1 SDK and later versions
dotnet sln
- Lists or modifies the projects in a .NET solution file, or migrates the file to an .slnx file.
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
The dotnet sln
command provides a convenient way to list and modify projects in a solution file.
To use the dotnet sln
command, the solution file must already exist. If you need to create one, use the dotnet new command with the sln
template name.
The following example creates a .sln file in the current folder, with the same name as the folder:
dotnet new sln
The following example creates a .sln file in the current folder, with the specified file name:
dotnet new sln --name MySolution
The following example creates a .sln file in the specified folder, with the same name as the folder:
dotnet new sln --output MySolution
SOLUTION_FILE
The solution file to use (either an .sln or .slnx file).
If unspecified, the command searches the current directory for an .sln or .slnx file and, if it finds exactly one, uses that file. If multiple solution files are found, the user is prompted to specify a file explicitly. If none are found, the command fails.
-?|-h|--help
Prints out a description of how to use the command.
The following commands are available:
Lists all projects in a solution file.
dotnet sln list [-h|--help]
SOLUTION_FILE
The solution file to use (either an .sln or .slnx file).
If unspecified, the command searches the current directory for an .sln or .slnx file and, if it finds exactly one, uses that file. If multiple solution files are found, the user is prompted to specify a file explicitly. If none are found, the command fails.
-?|-h|--help
Prints out a description of how to use the command.
Adds one or more projects to the solution file.
dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]
SOLUTION_FILE
The solution file to use (either an .sln or .slnx file).
If unspecified, the command searches the current directory for an .sln or .slnx file and, if it finds exactly one, uses that file. If multiple solution files are found, the user is prompted to specify a file explicitly. If none are found, the command fails.
PROJECT_PATH
The path to the project or projects to add to the solution. Unix/Linux shell globbing pattern expansions are processed correctly by the dotnet sln
command.
If PROJECT_PATH
includes folders that contain the project folder, that portion of the path is used to create solution folders. For example, the following commands create a solution with myapp
in solution folder folder1/folder2
:
dotnet new sln
dotnet new console --output folder1/folder2/myapp
dotnet sln add folder1/folder2/myapp
You can override this default behavior by using the --in-root
or the -s|--solution-folder <PATH>
option.
-?|-h|--help
Prints out a description of how to use the command.
--in-root
Places the projects in the root of the solution, rather than creating a solution folder. Can't be used with -s|--solution-folder
.
-s|--solution-folder <PATH>
The destination solution folder path to add the projects to. Can't be used with --in-root
.
Removes a project or multiple projects from the solution file.
dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
SOLUTION_FILE
The solution file to use (either an .sln or .slnx file).
If unspecified, the command searches the current directory for an .sln or .slnx file and, if it finds exactly one, uses that file. If multiple solution files are found, the user is prompted to specify a file explicitly. If none are found, the command fails.
PROJECT_PATH
The path to the project or projects to remove from the solution. Unix/Linux shell globbing pattern expansions are processed correctly by the dotnet sln
command.
-?|-h|--help
Prints out a description of how to use the command.
Generates an .slnx solution file from an .sln file.
dotnet sln [<SOLUTION_FILE>] migrate
dotnet sln [<SOLUTION_FILE>] migrate [-h|--help]
SOLUTION_FILE
The .sln solution file to migrate.
If unspecified, the command searches the current directory for an .sln file and, if it finds exactly one, uses that file. If multiple .sln files are found, the user is prompted to specify a file explicitly. If none are found, the command fails.
If you specify an .slnx file instead of an .sln file, or if an .slnx file with the same file name (minus the .sln extension) already exists in the directory, the command fails.
-?|-h|--help
Prints out a description of how to use the command.
List the projects in a solution:
dotnet sln todo.slnx list
Add a C# project to a solution:
dotnet sln add todo-app/todo-app.csproj
Remove a C# project from a solution:
dotnet sln remove todo-app/todo-app.csproj
Add multiple C# projects to the root of a solution:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
Add multiple C# projects to a solution:
dotnet sln todo.slnx add todo-app/todo-app.csproj back-end/back-end.csproj
Remove multiple C# projects from a solution:
dotnet sln todo.slnx remove todo-app/todo-app.csproj back-end/back-end.csproj
Add multiple C# projects to a solution using a globbing pattern (Unix/Linux only):
dotnet sln todo.slnx add **/*.csproj
Add multiple C# projects to a solution using a globbing pattern (Windows PowerShell only):
dotnet sln todo.slnx add (ls -r **/*.csproj)
Remove multiple C# projects from a solution using a globbing pattern (Unix/Linux only):
dotnet sln todo.slnx remove **/*.csproj
Remove multiple C# projects from a solution using a globbing pattern (Windows PowerShell only):
dotnet sln todo.slnx remove (ls -r **/*.csproj)
Generate an .slnx file from a .sln file:
dotnet sln todo.sln migrate
Create a solution, a console app, and two class libraries. Add the projects to the solution, and use the --solution-folder
option of dotnet sln
to organize the class libraries into a solution folder.
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
The following screenshot shows the result in Visual Studio 2019 Solution Explorer:
.NET-tilbakemelding
.NET er et åpen kilde-prosjekt. Velg en kobling for å gi tilbakemelding:
Hendelser
17. mars, 21 - 21. mars, 10
Bli med i meetup-serien for å bygge skalerbare AI-løsninger basert på virkelige brukstilfeller med andre utviklere og eksperter.
Registrer deg nå