如何解决与 TFS 上的路径冲突

本文关键字:TFS 路径 冲突 何解决 解决 | 更新日期: 2023-09-27 17:58:42

>我有单元测试。在 csproj 文件上,路径以这种方式写入:

<Reference Include="DocumentFormat.OpenXml, Version=2.5.5631.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
  <SpecificVersion>False</SpecificVersion>
  <HintPath>..'..'Dependency'DocumentFormat.OpenXml.dll</HintPath>
</Reference>

但是当我在 tfs 上构建项目时,编译后我看到警告:

C:''Windows''Microsoft.NET''Framework64''v4.0.30319''Microsoft.Common.targets (1605(: 无法解析此引用。找不到程序集"DocumentFormat.OpenXml"。检查以确保磁盘上存在程序集。如果代码需要此引用,则可能会收到编译错误。

因为此路径 (....''Dependency''DocumentFormat.OpenXml.dll( 不存在。当前目录是/bin。那么如何解决此警告呢?

如何解决与 TFS 上的路径冲突

看起来..'..'Dependency'DocumentFormat.OpenXml.dll文件未签入 TFS。 将其签入解决方案中的适当位置,并更新.csproj文件中的引用。

我们通过Nuget包添加DocumentFormat.OpenXml.dll时遇到了这个问题。浏览软件包创建的引用,我们发现它不是引用已安装的dll,而是引用了C:'Program Files (x86)'Open XML SDK'V2.5中的副本。

最初将 DLL 的副本直接添加到解决方案并更改引用以使其在 TFS 上生成后,我们尝试仅使用Update-Package -reinstall DocumentFormat.OpenXml从包管理器控制台手动重新安装包,该使用包文件夹中副本的正确路径重新创建引用,并且未发生错误。

复制库 *.dll 以放置项目可执行文件的位置。