.NET Core基礎學習——.NET Core SDK與命令列(CL

joytoy發表於2021-09-09

.NET Core SDK與命令列(CLI)工具

作為開發者,如果想要開發.net core跨平臺應用程式,必須安裝.NET Core SDK

.NET Core SDK 概述

.NET Core 軟體開發工具包 (SDK) 是一組庫和工具,使開發人員能夠建立 .NET Core 應用程式和庫。 這是開發人員最可能獲取的包。

它包含下列元件:

  • .NET Core 命令列工具,用於生成應用程式
  • .NET Core(庫和執行時),用於生成並執行應用程式
  • dotnet 驅動程式,用於執行 和應用程式

注:.NET Core SDK已經包含了執行時,所以不需要再額外安裝執行時。

.NET Core 命令列(CLI)工具

.NET Core 命令列介面 (CLI) 工具是用於開發 .NET 應用程式的新型跨平臺工具鏈。 使用它可以用於構建、測試,執行和釋出應用程式,CLI 是更高階別的工具(如整合開發環境 (IDE)、編輯器和生成協調程式)可以駐留的基礎。在預設情況下,SLI 以並行 (SxS) 方式安裝,因此,可以在一個計算機上有多個版本的 CLI 工具。

Core SDK工具包,就可以使用CLI。

CLI命令

CLI命令不需要死記硬背,你只需要記住dotnet help命令即可,使用該命令可以檢視詳細的說明。

PS C:UsersSmallZ> dotnet help
.NET 命令列工具 (2.1.401)
使用情況: dotnet [runtime-options] [path-to-application] [arguments]

執行 .NET Core 應用程式。

runtime-options:
  --additionalprobingpath      要探測的包含探測策略和程式集的路徑。
  --additional-deps            指向其他 deps.json 檔案的路徑。
  --fx-version              要用於執行應用程式的安裝版共享框架的版本。
  --roll-forward-on-no-candidate-fx  已啟用“不前滾到候選共享框架”。

path-to-application:
  要執行的應用程式 .dll 檔案的路徑。

使用情況: dotnet [sdk-options] [command] [command-options] [arguments]

執行 .NET Core SDK 命令。

sdk-options:
  -d|--diagnostics  啟用診斷輸出。
  -h|--help         顯示命令列幫助。
  --info            顯示 .NET Core 資訊。
  --list-runtimes   顯示安裝的執行時。
  --list-sdks       顯示安裝的 SDK。
  --version         顯示使用中的 .NET Core SDK 版本。

SDK 命令:
  add               將包或引用新增到 .NET 專案。
  build             生成 .NET 專案。
  build-server      與由生成版本啟動的伺服器進行互動。
  clean             清理 .NET 專案的生成輸出。
  help              顯示命令列幫助。
  list              列出 .NET 專案的專案引用。
  migrate           將 project.json 專案遷移到 MSBuild 專案。
  msbuild           執行 Microsoft 生成引擎(MSBuild)命令。
  new               建立新的 .NET 專案或檔案。
  nuget             提供其他 NuGet 命令。
  pack              建立 NuGet 包。
  publish           釋出 .NET 專案進行部署。
  remove            從 .NET 專案中刪除包或引用。
  restore           還原 .NET 專案中指定的依賴項。
  run               生成並執行 .NET 專案輸出。
  sln               修改 Visual Studio 解決方案檔案。
  store             在執行時包儲存中儲存指定的程式集。
  test              使用 .NET 專案中指定的測試執行程式執行單元測試。
  tool              安裝或管理擴充套件 .NET 體驗的工具。
  vstest            執行 Microsoft 測試引擎(VSTest)命令。

捆綁工具中的其他命令:
  dev-certs         建立和管理開發證書。
  ef                Entity Framework Core 命令列工具。
  sql-cache         SQL Server 快取命令列工具。
  user-secrets      管理開發使用者密碼。
  watch             啟動檔案觀察程式,它會在檔案發生更改時執行命令。

執行 "dotnet [command] --help",獲取有關命令的詳細資訊。
PS C:UsersSmallZ>

你也可以直接檢視官方文件來了解每個命令對應的選項和引數的詳細說明:

指定版本的CLI工具

預設情況下,將會執行計算機上安裝的最新版本的CLI工具,例如,在目錄test中使用dotnet命令檢視CLI工具的版本:

C:	est>dotnet --version
2.1.401

如果安裝了多個版本的CLI,並且不想執行最新版本,可以在當前工作目錄中建立global.json檔案,並確保它至少包含以下內容:

{
	"sdk":{
		"version":"2.0.0"
	}
}

例如,在上述中的資料夾test中新增包含該內容的global.json檔案後,再次執行命令,將會以指定版本的CLI工具執行:

C:	est>dotnet --version
2.0.0

注意:此處version屬性的值確定要使用的CLI工具的版本,該版本等同於SDK版本, core執行時版本並不相同。執行時版本在專案檔案(.csproj)中指定,如下:

Exenetcoreapp2.1

你可以在VS中,右擊專案屬性,在應用程式選項卡的使用者介面中進行配置(對應項為目標框架),你也可以手動的編輯上述中的.csproj專案檔案,更改對應的TargetFramework值即可。

常用CLI命令

這裡按照實際應用中的使用順序進行概述。

dotnet new 命令為初始化有效的 .NET Core 專案提供了便捷方法。

dotnet restore 命令使用 NuGet 還原依賴項以及在 project 檔案中指定的特定於專案的工具。預設情況下會並行執行對依賴項和工具的還原。

dotnet build 用於生成專案及其所有依賴項。

無需任何顯式編譯或啟動命令即可執行原始碼。dotnet run 命令為從原始碼使用一個命令執行應用程式提供了一個方便的選項。 這對從命令列中進行快速迭代開發很有幫助。 命令取決於生成程式碼的 命令。 對於此生成的任何要求,例如專案必須首先還原,同樣適用於 dotnet run

用於執行單元測試的 .NET 測試驅動程式。

將應用程式及其依賴項打包到資料夾以部署到託管系統。

將程式碼打包到 NuGet 包。

將預覽版 2 .NET Core 專案遷移到 .NET Core SDK 1.0 專案。dotnet migrate 命令將有效的基於預覽版 2 project.json 的專案遷移到有效的 .NET Core SDK 1.0 csproj 專案。

清除專案輸出。dotnet clean 命令可清除上一個生成的輸出。 它以 的形式實現,以便在執行命令時對專案進行評估。 只會清除在生成過程中建立的輸出。 中間 (obj) 和最終輸出 (bin) 資料夾都會被清除。


參考資源

  • 《Programming Core》

本文後續會隨著知識的積累不斷補充和更新,內容如有錯誤,歡迎指正。

最後一次更新時間:2018-09-05


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4650/viewspace-2813567/,如需轉載,請註明出處,否則將追究法律責任。

相關文章