预渲染 blazor webassembly 网站 .net 标准 2.1 失败

时间:2021-03-15 23:01:18

标签: blazor webassembly prerender

我有一个 blazor 服务器项目 .NET core 3.1 和一个 blazor Web 客户端项目 .NET Standard 2.1。 服务器项目应该预渲染 Web 客户端,但我一直在 blazor.config 上找不到 execption。即使我创建了这样的文件并添加了所需的信息,我仍然会收到错误消息。

知道在哪里可以找到最新的示例项目或如何让它工作的想法吗?

应用程序总是在这一行抛出异常:app.UseClientSideBlazorFiles();

异常: System.IO.DirectoryNotFoundException: 'C:\Users\thoma\Downloads\blzRdr\blzRdr2\blzAppTest\bin\Debug\netstandard2.1\dist'

谢谢

1 个答案:

答案 0 :(得分:0)

  1. 升级到 Net5。
  2. UseClientSideBlazor 已过时。使用
 app.UseBlazorFrameworkFiles();
  1. 您的 _Host.cshtml 文件应该类似于:
.....
<body>
    <div id="app">
        <app>
            <component type="typeof(mylibrary.App)" render-mode="Static" />
        </app>
    </div>

    <script src="_framework/blazor.webassembly.js"></script>
</body>
</html>

<app>...</app> 预加载页面的静态服务器构建版本,然后在加载 WebAssembly 后,将实时页面重新加载到 <div id="app">....</div> 以替换现有内容。