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

Blazor项目MSB4044错误:WriteLinesToFile任务缺少必填参数File

错误详情

错误 MSB4044:"WriteLinesToFile" 任务未获得必填参数 "File" 的赋值。

  • 关联项目:BlazorTutorial.Client
  • 触发报错的文件路径:C:\Program Files\dotnet\sdk\5.0.400\Sdks\Microsoft.NET.Sdk.BlazorWebAssembly\targets\Microsoft.NET.Sdk.BlazorWebAssembly.ServiceWorkerAssetsManifest.targets

对应报错的代码段:

// !---报错代码行
 <WriteLinesToFile
      File="%(_ServiceWorkerIntermediateFile.Identity)"
      Lines="/* Manifest version: $(_ServiceWorkerAssetsManifestVersion) */"
      Condition="'$(_ServiceWorkerAssetsManifestVersion)' != ''" />

已尝试的操作:

  • 将SDK版本从5.0.3升级到5.0.4,问题未解决
  • 更新Visual Studio版本,未生效
  • 从Git仓库回滚到项目可正常运行的版本,仍报相同错误
  • 新建Blazor项目不会触发该错误
  • 清理项目→退出Visual Studio→删除bin和obj文件夹→重新打开项目→重建项目,仍然出现相同错误

解决方案

修改服务端的program.cs文件,删除CreateHostBuilder方法中手动指定内容根目录和Web根目录的两行代码:

// 位于服务端的program.cs文件
public static IHostBuilder CreateHostBuilder(string[] args) =>
       Host.CreateDefaultBuilder(args)
           .ConfigureWebHostDefaults(webBuilder =>
           {       
                // 移除以下两行代码
                // webBuilder.UseContentRoot(Directory.GetCurrentDirectory());
                // webBuilder.UseWebRoot("wwwroot");
                webBuilder.UseStartup<Startup>();
           });

完成代码修改后,删除服务端的wwwroot文件夹,错误即可完全消失。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 05:18:04