.NET Core基礎學習——.NET Core SDK與命令列(CL
.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
)中指定,如下:
Exe netcoreapp2.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/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- .NET CORE命令列命令列
- .net core整合JWT(基礎)JWT
- .net core/.net 使用 CommandLineParser 來標準化地解析命令列命令列
- .Net Core基礎的健康檢查
- 學習ASP.NET Core(06)-Restful與WebAPIASP.NETRESTWebAPI
- GRPC與.net coreRPC
- 關於 .NET Core(.NET Core 指南)
- 在 Arch Linux 中使用 .NET Core SDKLinux
- 《學習筆記》.NET Core API搭建筆記API
- ASP.NET Core RESTful學習理解ASP.NETREST
- .NET平臺系列30:.NET Core/.NET 學習資源彙總
- .NET Core
- ASP.NET Core基礎知識(四)【路由】ASP.NET路由
- ASP.NET Core基礎知識(一)【概述】ASP.NET
- .NET Core基礎篇之:依賴注入DependencyInjection依賴注入
- .NET Core學習筆記(8)——Entity Framework Core之Database First筆記FrameworkDatabase
- .NET Core學習筆記(9)——Entity Framework Core之Code First筆記Framework
- NET Core 1.0-學習筆記(一)筆記
- ASP.NET Core 框架本質學習ASP.NET框架
- ASP.NET Core 學習筆記 第四篇 ASP.NET Core 中的配置ASP.NET筆記
- .NET平臺系列9 .NET Core 3.0 / .NET Core 3.1 詳解
- .Net Core 微服務容器系列基礎目錄篇微服務
- ASP.NET Core 2.2 基礎知識(六)【Configuration】ASP.NET
- ASP.NET Core MVC專案基礎構建ASP.NETMVC
- .NET Core基礎篇之:配置檔案讀取
- 學習ASP.NET Core(05)-使用Swagger與Jwt授權ASP.NETSwaggerJWT
- Dapper in .Net CoreAPP
- .Net Core:限流
- ASP.NET Core 學習筆記 第五篇 ASP.NET Core 中的選項ASP.NET筆記
- 一套基於 .NET Core 開發的支付SDK集 - paylink
- ASP.NET Core Web API 索引 (更新Redis in .NET Core)ASP.NETWebAPI索引Redis
- 【asp.net core 系列】14 .net core 中的IOCASP.NET
- ASP.NET Core - IStartupFilter 與 IHostingStartupASP.NETFilter
- ASP.NET Core 2.2 基礎知識(七)【選項】ASP.NET
- .NET Core基礎篇之:白話管道中介軟體
- ASP.NET Core ----ASP.NET Core中使用Code FirstASP.NET
- ASP.NET 6.0 Core 遷移 ASP.NET Core 7.0ASP.NET
- C#/.NET/.NET Core學習視訊彙總(持續更新ing)C#