经过以下步骤,它几乎可以正常工作:
blazorwasm
模板应用的托管版本。
dotnet new blazorwasm --hosted -o HostedWasm
_Hosted.cshtml
从blazorserver
模板复制到Pages
文件夹。endpoints.MapFallbackToFile("index.html")
中的endpoints.MapFallbackToPage("/_Host")
更改为Startup.cs
<script src="_framework/blazor.server.js"></script>
中的<script src="_framework/blazor.webassembly.js"></script>
更改为_Host.cshtml
现在,如果您dotnet run
服务器,则可以使用预渲染的HTML导航模板页面。
但是,我有两个问题:
/
,然后转到/fetchdata
,一切都会好起来,但是如果您在/fetchdata
路径上使用F5(例如 refresh ),则说明会看到InvalidOperationException:无法为属性“ Http”提供值 在类型“ HostedWasm.Client.Pages.FetchData”上。没有注册 类型为“ System.Net.Http.HttpClient”的服务。
要对其进行修复,您需要将HttpClient
配置代码从 Client / Program.cs 复制到 Server / Startup.cs