.NET Webform升級成Blazor Server App D3 移轉初始頁面

BrightXplm
2022-09-18 23:10:34

Blazor 的啟動過程已從 Web 窗體更改，並遵循其他 ASP.NET Core 服務的類似設置在服務器端託管時，Blazor 組件作為普通 ASP.NET Core 應用程序的一部分運行當使用 WebAssembly 在瀏覽器中託管時，Blazor 組件使用類似的託管模型不同之處在於組件作為獨立於任何後端進程的服務運行無論哪種方式，啟動都是相似的
Global.asax.cs 文件是 Web 窗體項目的默認啟動頁面在 eShop 項目中，此文件配置控制反轉 (IoC) 容器並處理應用程序或請求的各種生命週期事件其中一些事件由中間件（例如 Application_BeginRequest）處理其他事件需要通過依賴注入 (DI) 覆蓋特定服務

可從 Web 表單中註意到的一項重大變化是依賴注入 (DI) 的突出 DI 一直是 ASP.NET Core 設計中的指導原則它支持自定義 ASP.NET Core 框架的幾乎所有方面甚至還有一個可用於許多場景的內置服務提供程序如果需要更多的定制，可以去許多社群項目找資源例如，可以結轉第三方 DI 函式庫的投資
在最初的應用程式中，有一些用於會話管理的配置由於服務器端 Blazor 使用 ASP.NET Core SignalR 進行通信，因此不支持會話狀態，因為連接可能獨立於 HTTP 上下文而發生使用會話狀態的應用需要重新架構才能作為 Blazor 應用運行