練習 - 針對架構相依部署進行發佈
ASP.NET Core 應用程式的架構相依部署是預設值。 當您發佈架構相依應用程式時,部署套件中只會包含您應用程式的檔案和相依性。 不包含 .NET 運行時間。 目標計算機必須安裝正確的 .NET 運行時間版本,才能執行應用程式。
小組負責人要求您準備小組的應用程式以進行部署。 由於應用程式將執行的伺服器已安裝 .NET 運行時間,因此您可以將應用程式發佈為架構相依部署。 這樣可減少部署套件的大小,並讓您更輕鬆地部署應用程式。
在此練習中,您會將 ASP.NET Core 應用程式發佈為架構相依部署。
建立 ASP.NET Core 應用程式
您需要 ASP.NET Core 應用程式來扮演小組應用程式的角色。 讓我們在 Visual Studio Code 中使用 C# 開發工具包擴充功能建立新的 ASP.NET Core 應用程式。
啟動 Visual Studio Code。
按 Ctrl+Shift+P 以開啟命令選擇區。
搜尋並選取 [.NET 新增專案]。
搜尋並選取 [ASP.NET Core Empty]。
選取或建立新專案的資料夾。
將新的應用程式命名為「MyWebApp」。
選取 [建立專案] 以建立專案。
執行應用程式
測試應用程式以確定其可執行。
在 Visual Studio Code 中,按 F5 建置並執行應用程式。
- 出現提示時,選取 [C#] 作為偵錯工具。
- 出現提示時,選取 [C#:MyWebApp [預設設定]] 作為要使用的啟動設定。
此命令會啟動應用程式,並將其裝載在本機網頁伺服器上。 瀏覽器視窗隨即開啟並顯示 「Hello, World」。。
在 Visual Studio Code 中按 Shift+F5 以關閉瀏覽器視窗並停止應用程式。
將應用程式發佈為架構相依部署
既然您已確認應用程式已正確執行,您可以將它發佈為架構相依部署。
在 Visual Studio Code 中,按 Ctrl+' 以開啟終端機視窗。
流覽至 MyWebApp 目錄。
cd MyWebApp執行下列命令以發佈應用程式:
dotnet publish -c Release -o publish-fd在上述命令中:
-
-c Release指定應用程式應該以發行模式建置。 這會優化應用程式以達到效能。 -
-o指定輸出目錄的名稱。 在此情況下,輸出目錄會命名為 publish-fd。
此命令會將應用程式發佈為架構相依部署至 publish-fd 目錄。
-
在 Visual Studio Code Explorer 視窗中,展開 MyWebApp/publish-fd 目錄的內容,並檢視檔案清單。 目錄包含應用程式的檔案和相依性,但不包含 .NET 運行時間或原始碼檔案。 部分包含的檔案和目錄如下:
- MyWebApp.dll『**:已編譯的應用程式。
- 其他 MyWebApp. .檔案:執行應用程式所需的其他檔案。
- appsettings.json:應用程式的組態檔。
- web.config:Windows 上的 IIS (Internet Information Services) 組態檔。
- wwwroot:當存在時,此目錄包含已發佈的靜態 Web 資產,例如 HTML、CSS 和 JavaScript 檔案。 如果專案未包含任何靜態 Web 資產,則不會產生此目錄,因此在此案例中不存在。
流覽至 publish-fd 目錄並執行應用程式。
cd publish-fd dotnet MyWebApp.dll此命令會啟動已發佈的應用程式,並在 Kestrel 中裝載它。 線上至應用程式的網頁瀏覽器會看到相同的預設 ASP.NET Core 歡迎頁面。
關閉網頁瀏覽器,並在終端機視窗中按 Ctrl+C 停止應用程式。