簡體   English   中英

將 WebAssembly Blazor 轉換為托管的

[英]Convert WebAssembly Blazor to a Hosted one

我正在測試 Blazor.net,但由於 WebAssembly (.net Core 3.1) 中缺乏調試而立即失敗。

是否有一種快速簡便的方法可以將我的 WebAssembly 應用程序重新配置為托管應用程序,以便我可以在開發示例時調試 .net 代碼?

我剛剛看了這個視頻,它展示了一個很好的技巧:

  • 將 2 個項目添加到您的解決方案中,ServerApp 和 WasmApp。
  • 在您的 ServerApp 中,添加對 WasmApp 的引用
  • 在 ServerApp._Host.cshtml 中,將此行更改為使用WasmApp.App

    <component type="typeof(WasmApp.App)" render-mode="ServerPrerendered" />

  • 現在從 ServerApp 項目中刪除所有 .razor 文件和由此產生的死代碼。

您現在可以在 WasmApp 中開發所有 blazor 頁面,也可以使用 ServerApp 運行它們。 唯一的重復是在添加 css 或 js 文件時並行維護_Host.cshtmlindex.html

視頻還顯示了一個附加功能來顯示正在運行的內容:

@using System.Runtime.InteropServices

<p>Env: @Environment</p>

@code{
  string Environment = RuntimeInformation.IsOSPlatform(OSPlatform.Create("BROWSER")) // was "WEBASSEMBLY"
  ? "WebAssembly" 
  : "Server";

}

把它放在你的主頁或 NavMenu 或其他東西上。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM