我很难理解我的 blazor 应用程序的问题所在。我有一个客户端 blazor,正在从 .net 3.1 更新到 .net 6。我已阅读有关从 3.1 迁移到 6 的说明,但是当我尝试调试它时,我的应用程序永远不会加载。它抛出:
“无法加载资源:服务器响应状态为 404 ()”错误 https://i.stack.imgur.com/vLy6Z.png
我在其他帖子中读到过有关 blazor.web assembly.js 未正确加载的信息,但我不确定我做错了什么。我已经检查了参考文献是否有任何错误。 Api 参考在 .NET 6 上正常运行,共享库使用 .net 标准 2.0
这是一些代码,以防您需要。
谢谢你的时间。
索引.html:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="6.0.5" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="6.0.5" PrivateAssets="all" />
<PackageReference Include="Microsoft.Extensions.Http" Version="6.0.0" />
<PackageReference Include="System.Net.Http.Json" Version="6.0.0" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\SkillMatrix.Api\SkillMatrix.Api.csproj" />
<ProjectReference Include="..\SkillMatrix.Shared\SkillMatrix.Shared.csproj" />
</ItemGroup>
</Project>
索引.html:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<title>SkillMatrix.Client</title>
<base href="/" />
<link href="css/bootstrap/bootstrap.min.css" rel="stylesheet" />
<link href="css/app.css" rel="stylesheet" />
</head>
<body>
<app>Loading...</app>
<div id="blazor-error-ui">
An unhandled error has occurred.
<a href="" class="reload">Reload</a>
<a class="dismiss">????</a>
</div>
<script src="_framework/blazor.webassembly.js"></script>
</body>
</html>
想出了解决办法。我必须将 csproj 更改为
<Project Sdk="Microsoft.NET.Sdk.Web">
to
<Project Sdk="Microsoft.NET.Sdk.BlazorWebAssembly">
基于这个答案 https://stackoverflow.com/questions/60932402/blazor-wasm-failed-to-load-resource-the-server-responded-with-a-status-of-4
另请确保项目组上的 Microsoft.AspNetCore.Components.WebAssembly 引用至少设置为版本 6.0.0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)