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

BizTalk 2020 添加特定NuGet包后AddBizTalkHiddenReferences报错生成失败如何解决

复现步骤

  1. 运行环境栈:Windows 10、Visual Studio 2019 专业版、BizTalk Server 2020 开发者版 CU1
  2. 在Visual Studio中新建BizTalk Server项目
  3. 打开NuGet包管理器,添加对应NuGet包,可选类别如下:
    • 已知会导致生成失败的包版本:autofac 6.0/6.1/6.2、nodatime 3.0.5、Azure.Storage.Blobs 12.9.1
    • 已知不会导致生成失败的包版本:autofac 5.2、其余多数测试过的NuGet包
  4. 按F6执行生成操作,或直接运行msbuild命令

经测试验证:若NuGet包的依赖项直接包含.NET Framework版本变体,生成可正常完成;若包仅标注.NET Standard和.NET 5作为依赖项,则会触发生成失败问题。

实际报错信息:

PS C:\code\autofacRepro> msbuild
Microsoft (R) Build Engine version 16.11.0+0538acc04 for .NET Framework
Copyright (C) Microsoft Corporation. All rights reserved.

Building the projects in this solution one at a time. To enable parallel build, please add the "-m" switch.
Build started 8/24/2021 3:01:10 PM.
Project "C:\code\autofacRepro\autofacRepro.sln" on node 1 (default targets).
ValidateSolutionConfiguration:
  Building solution configuration "Debug|Any CPU".
Project "C:\code\autofacRepro\autofacRepro.sln" (1) is building "C:\code\autofacRepro\autofacRepro.btproj" (2) on node 1 (default targets).
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018: The "AddBizTalkHiddenReferences" task failed unexpectedly. [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018: System.ArgumentException: String cannot have zero length. [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018:    at System.Reflection.AssemblyName..ctor(String assemblyName) [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018:    at Microsoft.VisualStudio.BizTalkProject.BuildTasks.AddBizTalkHiddenReferences.GetAssemblyNamesFromItems(ITaskItem[] items) [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018:    at Microsoft.VisualStudio.BizTalkProject.BuildTasks.AddBizTalkHiddenReferences.Execute() [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018:    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() [C:\code\autofacRepro\autofacRepro.btproj]
C:\Program Files (x86)\MSBuild\Microsoft\BizTalk\BizTalkCommon.targets(190,9): error MSB4018:    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() [C:\code\autofacRepro\autofacRepro.btproj]
Done Building Project "C:\code\autofacRepro\autofacRepro.btproj" (default targets) -- FAILED.

Done Building Project "C:\code\autofacRepro\autofacRepro.sln" (default targets) -- FAILED.

Build FAILED.

问题复现压缩包可在公开的Autofac项目Issue记录中获取,最初排查时误以为是autofac专属问题,实际为通用问题。

此前使用旧环境栈(Windows Server 2016、Visual Studio 2015、BizTalk 2016)未出现该问题,该环境下BizTalk项目中使用autofac 6.1完全正常。

目前判断该问题为BizTalk本身的Bug,但暂未找到向微软反馈问题的官方渠道,咨询是否有对应的临时规避方案或官方修复补丁?


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 03:15:02