dotnet sln
本文適用於: ✔️ .NET Core 3.1 SDK 與更新版本
名稱
dotnet sln
- 列出或修改 .NET 解決方案檔案中的專案。
概要
dotnet sln [<SOLUTION_FILE>] [command]
dotnet sln [command] -h|--help
描述
dotnet sln
命令提供方便的方式,來列出和修改方案檔中的專案。
建立方案檔
若要使用 dotnet sln
命令,方案檔必須已經存在。 如果您需要建立一個,則請搭配使用 dotnet new 命令與 sln
範本名稱。
下列範例會在目前資料夾中建立 .sln 檔案,而其名稱與資料夾相同:
dotnet new sln
下列範例會在目前資料夾中建立具有所指定檔案名稱的 .sln 檔案:
dotnet new sln --name MySolution
下列範例會在指定的資料夾中建立 .sln 檔案,而其名稱與資料夾相同:
dotnet new sln --output MySolution
引數
SOLUTION_FILE
要使用的方案檔。 如果省略此引數,則命令會在目前目錄中進行搜尋。 如果找不到任何方案檔或多個方案檔,則命令會失敗。
選項。
-?|-h|--help
列印如何使用命令的描述。
命令
list
列出方案檔中的所有專案。
概要
dotnet sln list [-h|--help]
引數
SOLUTION_FILE
要使用的方案檔。 如果省略此引數,則命令會在目前目錄中進行搜尋。 如果找不到任何方案檔或多個方案檔,則命令會失敗。
選項。
-?|-h|--help
列印如何使用命令的描述。
add
將一或多個專案新增至方案檔。
概要
dotnet sln [<SOLUTION_FILE>] add [--in-root] [-s|--solution-folder <PATH>] <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln add [-h|--help]
引數
SOLUTION_FILE
要使用的方案檔。 如果未指定,則命令會在目前目錄中進行搜尋,而且如果有多個方案檔,則會失敗。
PROJECT_PATH
一或多個要新增至方案之專案的路徑。
dotnet sln
命令會正確處理 Unix/Linux 殼層 Glob 模式擴充。如果
PROJECT_PATH
包括含有專案資料夾的資料夾,則會使用路徑的該部分來建立方案資料夾。 例如,下列命令會在方案資料夾folder1/folder2
中使用myapp
來建立方案:dotnet new sln dotnet new console --output folder1/folder2/myapp dotnet sln add folder1/folder2/myapp
您可以使用
--in-root
或-s|--solution-folder <PATH>
選項來覆寫此預設行為。
選項。
-?|-h|--help
列印如何使用命令的描述。
--in-root
請將專案放置在方案的根目錄中,而不是建立方案資料夾。 無法與
-s|--solution-folder
搭配使用。-s|--solution-folder <PATH>
要在其中新增專案的目的地方案資料夾路徑。 無法與
--in-root
搭配使用。
remove
從方案檔中移除一個專案或多個專案。
概要
dotnet sln [<SOLUTION_FILE>] remove <PROJECT_PATH> [<PROJECT_PATH>...]
dotnet sln [<SOLUTION_FILE>] remove [-h|--help]
引數
SOLUTION_FILE
要使用的方案檔。 如果未指定,則命令會在目前目錄中進行搜尋,而且如果有多個方案檔,則會失敗。
PROJECT_PATH
一或多個要從方案中移除之專案的路徑。
dotnet sln
命令會正確處理 Unix/Linux 殼層 Glob 模式擴充。
選項。
-?|-h|--help
列印如何使用命令的描述。
範例
列出方案中的專案:
dotnet sln todo.sln list
將 C# 專案新增至方案:
dotnet sln add todo-app/todo-app.csproj
移除方案中的 C# 專案:
dotnet sln remove todo-app/todo-app.csproj
將多個 C# 專案新增至方案的根目錄:
dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj --in-root
將多個 C# 專案新增至方案:
dotnet sln todo.sln add todo-app/todo-app.csproj back-end/back-end.csproj
從方案中移除多個 C# 專案:
dotnet sln todo.sln remove todo-app/todo-app.csproj back-end/back-end.csproj
使用 Glob 模式將多個 C# 專案新增至方案 (僅限 Unix/Linux):
dotnet sln todo.sln add **/*.csproj
使用 Glob 模式將多個 C# 專案新增至方案 (僅限 Windows PowerShell):
dotnet sln todo.sln add (ls -r **/*.csproj)
使用 Glob 模式從方案中移除多個 C# 專案 (僅限 Unix/Linux):
dotnet sln todo.sln remove **/*.csproj
使用 Glob 模式從方案中移除多個 C# 專案 (僅限 Windows PowerShell):
dotnet sln todo.sln remove (ls -r **/*.csproj)
建立方案、主控台應用程式,以及兩個類別庫。 將專案新增至方案,並使用
dotnet sln
的--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.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
下列螢幕擷取畫面顯示 Visual Studio 2019 [方案總管] 的結果:
另請參閱
- dotnet/sdk GitHub 存放庫 (.NET CLI 來源)