System.*.Http 文件未被 TFS 2015 构建代理复制到放置位置

System.*.Http files not copied to the drop location by TFS 2015 build-agent

编辑:提交后 post 我确定了真正的问题:MSBuild/TFSBuild 不部署 .dll 'CopyLocal=true' 文件,如果它们在 GAC 中找到。在这种情况下,"System.net.http.formatting" dll 位于构建服务器上的 GAC 中。看here and here

从 TFS 2012 升级到 2015 后,生成代理不再将以下 DLL 复制到放置位置。我如何确定构建代理不复制这些文件的原因?

system.net.http.formatting, System.Web.Http.dll or System.Web.Http.WebHost.dll

详情

我还应该看什么。

  1. 由于您已升级到 TFS 2015,建议使用与 XAML 构建完全不同的新构建系统。检查:https://www.visualstudio.com/en-us/docs/build/overview

  2. 看来你还在把引用的dll签入TFS,不建议这样做。相反,我们建议通过 NuGet 等包管理器恢复包。在网站 https://docs.nuget.org/ndocs/consume-packages/package-restore#msbuild-integrated-restore

  3. 查看 "Migrating to automatic restore"
  4. 如果您开始使用新的构建系统,您只需在任何构建任务之前的定义中包含 Restore NuGet Packages 任务。 Nuget包还原的详细信息,请查看https://docs.nuget.org/ndocs/consume-packages/package-restore