Visual studio App.config文件存在TFS生成问题(错误3719)

Visual studio App.config文件存在TFS生成问题(错误3719),visual-studio,tfs,msbuild,visual-studio-2012,azure-devops,Visual Studio,Tfs,Msbuild,Visual Studio 2012,Azure Devops,我目前正在将我的项目代码转移到使用新的。我试图设置在签入新代码时运行门控构建(并在解决方案中运行单元测试),但每次在TFS中构建时都会遇到相同的错误 以下是我不断发现的错误: 以下是诊断日志中处理此问题的部分: 我已经三次检查了App.config文件:它在源代码管理中。此外,失败的项目正在其他地方建造,没有任何问题 当我在VisualStudio2012中构建时,它运行良好。当我从命令行使用MSBuild构建它时,它工作正常。我甚至在本地机器上安装了Team Foundation Serve

我目前正在将我的项目代码转移到使用新的。我试图设置在签入新代码时运行门控构建(并在解决方案中运行单元测试),但每次在TFS中构建时都会遇到相同的错误

以下是我不断发现的错误:

以下是诊断日志中处理此问题的部分:

我已经三次检查了App.config文件:它在源代码管理中。此外,失败的项目正在其他地方建造,没有任何问题

当我在VisualStudio2012中构建时,它运行良好。当我从命令行使用MSBuild构建它时,它工作正常。我甚至在本地机器上安装了Team Foundation Server 2012,这样我就可以使用Team Foundation服务用于MSBug的确切命令行参数。效果很好

如果你需要更多的信息,我很乐意提供。提前感谢你的帮助

编辑:在MSDN TFService论坛上回答此问题,论坛上还有完整的诊断日志

编辑(12/12):当我做伊利亚的建议时(在下面的回答中),我从日志中得到:


尝试在失败的csproj中添加类似的内容并在云中运行,可能会泄露app.config丢失的原因。是否有其他自定义事件删除/重命名导致msbuild失败

<Target Name="AfterBuild">
  <Warning Text="### DEBUG ###" />
  <ItemGroup>
    <All Include="**\*.*" />
    <Compile>
      <Exists Condition="!Exists('%(Identity)')">FALSE</Exists>
    </Compile>
    <AppConfigWithTargetPath>
      <Exists Condition="!Exists('%(Identity)')">FALSE</Exists>
    </AppConfigWithTargetPath>
  </ItemGroup>
  <Warning Text="### All: %(All.Identity)" />
  <Warning Text="### Compile: %(Compile.Exist) # %(Compile.Identity)" />
  <Warning Text="### App: %(AppConfigWithTargetPath.Exist) # %(AppConfigWithTargetPath.Identity) # %(AppConfigWithTargetPath.FullPath)" />
</Target>    

错误的
错误的

好的,我终于让它工作了。胡萨

根据上面链接中的MSDN讨论,DataLayerExtensions项目的app.config文件不知何故已损坏。从源代码管理中删除它,然后重新创建配置文件就可以做到这一点。需要注意的是,12/12编辑中出现的图片中的错误并非指向数据层项目!实际上,这是在构建依赖项(GlobalItems和DataLayer)之后尝试构建datalayerx项目的第一行!在标签上有一点细微的差别

随后,还发生了其他app.config错误——所有这些错误都是因为实际上不在源代码管理中,或者与DataLayerConfig文件具有相同的损坏

最后要提到的一点是,显然,对于TFService,如果您使用任何第三方工具,您将在构建服务中出错,即使它在您的本地计算机上构建得很好。为了解决这个问题,我必须创建一个新文件夹,将那些第三方程序集复制到其中,让所有相关项目将它们的引用切换到该文件夹中的.dll文件,然后将其全部签入。完成后,构建成功完成


MSDN链接上仍然存在一个悬而未决的问题,即为什么Excel API也会像第三方工具一样被拒绝,但这超出了这个问题的范围。

生成服务器上是否运行了防病毒软件?生成服务器在云上。您能检查该文件是否已签出并存在于其中吗?可能会将一个
***.
项目组与
一起放入csproj,但失败了。我该怎么做(我以前从未放入过项目组)?好的,有人能解释一下-1吗?我相信失败的是DataLayerExtensions项目,而不是GlobalItems,你能将其添加到该项目中吗?完成,但我认为错误可能出现在DataLayer项目中。不知道,抱歉,文件似乎是用于复制的,尝试使用各种空白项目依赖性组合复制它,但无法获得与您相同的错误。如果这仍然是一个大问题,可能是您可以删除所有代码文件,清除配置和其他敏感数据,并尝试构建它,如果失败,可能是与清空的解决方案共享一个zip,以便其他人可以尝试调试。编辑:没关系,我看你把它修好了。