You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Blazor WASM项目升级到netcoreapp3.1后找不到BlazorWebAssembly JS文件报错

Blazor WASM 从netstandard2.1切换到netcoreapp3.1打包错误修复方案

你遇到的Unable to find BlazorWebAssembly JS files. This usually indicates a packaging error报错,核心原因是.NET Core 3.1版本的Blazor WASM框架规则和你修改后的项目配置不匹配,具体修复步骤如下:

  • 修正项目SDK配置:.NET Core 3.1 版本的Blazor WASM还没有推出独立的Microsoft.NET.Sdk.BlazorWebAssembly SDK,该专属SDK是.NET 5及之后版本才支持的,你需要把项目的Sdk属性改回原来的Microsoft.NET.Sdk.Web
  • 补充Blazor WASM标识:在PropertyGroup节点中新增<BlazorWebAssembly>true</BlazorWebAssembly>配置,告知打包工具这是Blazor WASM项目
  • 恢复缺失的配置项:把你修改时删掉的两个项目引用、logo.png静态资源复制配置加回项目文件,依赖缺失也会导致打包流程中断无法生成JS文件
  • 补充3.1版本专属NuGet引用:在ItemGroup中新增Blazor WASM 3.2版本(对应.NET Core 3.1的最后稳定发行版)的必备依赖:
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="3.2.1" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Build" Version="3.2.1" PrivateAssets="all" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="3.2.1" PrivateAssets="all" />
  • 重新生成项目:保存修改后的项目文件,删除解决方案所有项目的bin、obj文件夹,执行dotnet restore后重新生成项目即可解决报错

修复后完整项目文件参考

<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <RazorLangVersion>3.0</RazorLangVersion>
    <BlazorWebAssembly>true</BlazorWebAssembly>
    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
  </PropertyGroup>
  <ItemGroup>
    <None Remove="Resources\bg-BG.yml" />
    <None Remove="Resources\en-US.yml" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\..\BlazorShop.Common\BlazorShop.Common.csproj" />
    <ProjectReference Include="..\..\BlazorShop.Models\BlazorShop.Models.csproj" />
  </ItemGroup>
  <ItemGroup>
    <Content Update="wwwroot\logo.png">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly" Version="3.2.1" />
    <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Build" Version="3.2.1" PrivateAssets="all" />
    <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.DevServer" Version="3.2.1" PrivateAssets="all" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="Pages\Admin\Fills\" />
    <Folder Include="Pages\Admin\Ingredients\" />
    <Folder Include="Pages\Admin\Bases\" />
    <Folder Include="Pages\Admin\Orders\" />
  </ItemGroup>
</Project>

内容的提问来源于stack exchange,提问作者Vladimir Petukhov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 17:45:04