Dot-Net-Core

將 Blazor 伺服器應用程序轉換為 Blazor Web 程序集方法

  • December 23, 2020

我想通過 Blazor 技術開發一個 SPA 項目。

由於調試 Blazor Web-assembly 應用程序的複雜性,我想先將其創建為伺服器端應用程序,然後再將其更改為 Web-assembly 應用程序應用程序。

這可能嗎?如果是這樣,在我成功讓伺服器端 Blazor 項目工作之後,我需要進行哪些更改才能獲得與 WebAssembly 項目相同的功能?

此外,在我的伺服器端 Blazor 項目中是否應該避免任何特定的方法或技術,因為它們在使用 WebAssembly 時沒有等效項?

在大多數情況下,您的 Blazor 組件應該能夠從伺服器遷移到 Webassembly,而只需很少或無需更改。

如果您的 Blazor Server 應用程序不需要來自應用程序外部的數據(例如數據庫呼叫),並且它不使用瀏覽器不支持的任何 API(例如 System.Security.Cryptography),那麼您可以遷移到 Blazor Webassembly,而無需對組件進行任何更改。

如果您的 Blazor Server 應用程序確實需要來自瀏覽器外部的數據,那麼這些服務將需要託管在其他地方並通過 Http 請求從您的組件中呼叫(請參閱從 ASP.NET Core Blazor 呼叫 Web API)。Blazor Webassembly 後端有幾個不錯的選擇,其中最常見的是 Blazor Webassembly 託管模板。在此處輸入圖像描述

如果您希望將 Webassembly 應用程序作為靜態 Web 應用程序提供服務,則可以將後端服務移至無伺服器函式應用程序。有多種選擇,其中最方便的(在我看來)是使用帶有 .NET 和 Blazor 的 Azure 靜態 Web 應用

引用自:https://stackoverflow.com/questions/60577754