将 WebAssembly Blazor 转换为托管模型



我正在测试 Blazor.net 但立即在WebAssembly(.net Core 3.1(中缺乏调试。

有没有一种快速简便的方法可以将我的 WebAssembly 应用程序重新配置为托管应用程序,以便我可以在开发示例时调试 .net 代码?

我刚刚看了这个视频,它展示了一个很好的技巧:

  • 将 2 个项目添加到您的解决方案中,即 ServerApp 和 WasmApp。
  • 在您的服务器应用程序中,添加对 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";
}

把它放在你的主页或导航菜单或其他东西上。

相关内容

  • 没有找到相关文章

最新更新