TFS vNext 无法解析对来自名为 'dbref.dacpac' 的源的外部元素的引用,因为没有加载此类源

TFS vNext the reference to external elements from the source named 'dbref.dacpac' could not be resolved, because no such source is loaded

我目前正在尝试使用 TFS 2017 的 vNext 构建过程自动化我们的构建过程之一。

我有一个数据库解决方案作为系统的一部分,它包含两个数据库 db1 和 db2。 db1 引用 db2 但 db2 没有引用任何内容。

db1 项目的 post 构建步骤使用 sqlpackage.exe 将其与以前构建的版本进行比较并生成更改脚本。命令看起来像:

"sqlpackage.exe" /a:script /sf:"d:\Builds\a\db1\db1.dacpac" /tf:"d:\Builds\s\Databases\Current Live Versions\db1.dacpac" /op:"d:\Builds\s\bin\Release\Sql\db1.sql" /tdn:db1

从 Visual Studio 构建时工作正常,但是 TFS vNext 给出以下错误

EXEC(0,0): Error SQL0: The reference to external elements from the source named 'db2.dacpac' could not be resolved, because no such source is loaded.

我已将禁止引用警告设置为 "True",但这没有任何效果。

有人知道如何解决这个问题吗?

好的,我已经解决了。似乎引用文件的位置在 dacpacs 中使用的是绝对路径而不是相对路径,但是因为构建用户无法访问 "Current Live Versions" 版本的目录dacpac 是从它构建的,给出了这个错误...

一旦我授予构建用户访问此文件夹的权限,一切正常。