㈠ 1. 使用 Blazor 生成 Web 應用
通過 Blazor,C# 開發人員可運用自身技能使用 C# 和 Microsoft.NET 生成 Web 應用。
假設你正在生成客戶端 Web 應用,並且擁有 .NET 開發人員團隊。 同時,假設你想要將應用部署為漸進式 Web 應用程序。 然後,用戶可以下載應用並離線使用。
藉助 Blazor,開發人員可使用常用語言、框架和工具生成 Web 應用的前端和後端邏輯。
對前端和後端代碼使用同一語言,可以:
在本模塊中,你將:
已完成100 XP
生成 Web 應用的公司通常為聘請開發人員擔任不同角色。 某些開發人員創建後端伺服器端邏輯。 其他開發人員生成客戶端 Web 應用。 這些開發人員通常使用不同的開發語言和技術。
C# 和 Microsoft .NET 是生成伺服器端邏輯的常用選項。 但客戶端應用通常是使用 Web UI 框架生成的,該框架通常使用 JavaScript。 使用多種語言和工具集需要掌握多種技能,並且通常需要兩個單獨的團隊。 此外,用於傳輸和表示數據的代碼必須使用兩種語言生成並保持同步。
在本單元中,首先介紹 Blazor,然後探討 Razor 組件。
Blazor 應用包含使用 C#、HTML 和 CSS 生成的可重復使用的 Web UI 組件。 藉助 Blazor,開發人員可以使用 C# 生成客戶端和伺服器代碼。 他們還可以與前端客戶端代碼和後端邏輯共享代碼和庫。 使用 C# 生成所有代碼可簡化在前端和後端之間共享數據,重復使用代碼以加速開發和維護。
可以使用 Blazor 生成:
WebAssembly (WASM) 是一種開放的二進制標准。 它用於定義旨在 Web 瀏覽器中運行的程序的可移植代碼格式。 WebAssembly 是一種文本程序集語言,具有專用於實現快速下載和近乎本機性能的精簡二進制格式。
WebAssembly 為 C、C++ 和 Rust 等語言提供了編譯目標。 它設計為與 JavaScript 一起運行,因此兩者可協同工作。 WebAssembly 還可生成可下載和離線運行的漸進式 Web 應用程序。
使用 Blazor WebAssembly,開發人員可以在瀏覽器中運行 .NET 代碼。 它是一種單頁應用框架,使用的是 WebAssembly 開放標准,無需插件或代碼生成。
在瀏覽器中通過 WebAssembly 執行的 .NET 代碼在瀏覽器的 JavaScript 沙盒中運行。 該代碼具有沙盒提供的所有安全和保護特性。 這有助於防止客戶端計算機上的惡意操作。
Blazor 使用編譯為 WebAssembly 模塊的 .NET 運行時,該模塊隨應用一起下載。 該模塊可執行 Blazor 應用中包含的 .NET Standard 代碼。
Blazor WebAssembly 應用僅限於執行應用的瀏覽器的功能。 但該應用可以通過 JavaScript 互操作訪問完整的瀏覽器功能。
Blazor WebAssembly 需要新式桌面或移動瀏覽器。 當前支持以下瀏覽器:
Blazor 伺服器在 ASP.NET Core 應用中添加了對在伺服器上託管 Razor 組件的支持。 可通過 SignalR 連接處理 UI 更新。
運行時停留在伺服器上並處理:
Blazor 伺服器用於與瀏覽器通信的連接還用於處理 JavaScript 互操作調用。
可使用最新版本的 Visual Studio 2019、Visual Studio for Mac 或 Visual Studio Code 來生成 Blazor 應用。 在本模塊中,我們將使用 Visual Studio Code。
無論使用哪種開發環境,都需要安裝 .NET 5 SDK。 安裝後,即可開始生成 Blazor 應用。 在下一個練習中,將安裝所有必要的工具,以使用 Visual Studio Code 生成 Blazor WebAssembly 應用。