Visual studio 如何在TFS和本地计算机之间管理不同的数据库构建引用路径?

Visual studio 如何在TFS和本地计算机之间管理不同的数据库构建引用路径?,visual-studio,tfs,build,database-project,Visual Studio,Tfs,Build,Database Project,我有两个数据库项目DB_A和DB_B。项目DB_A引用DB_B 我通过指向数据库中的DB_B.dbschema添加了一个数据库引用 C:\SourceParent\DB Projects\DB_B\sql\debug\DB_B.dbschema 当我在本地机器上构建项目DB_A时,它运行良好 现在我想在我的TFS构建服务器上构建它,但是我得到了以下错误 File D:\Builds\SourceParent\Build_Name\DB_B\sql\debug\DB_B.dbschema doe

我有两个数据库项目DB_A和DB_B。项目DB_A引用DB_B

我通过指向数据库中的DB_B.dbschema添加了一个数据库引用

C:\SourceParent\DB Projects\DB_B\sql\debug\DB_B.dbschema
当我在本地机器上构建项目DB_A时,它运行良好

现在我想在我的TFS构建服务器上构建它,但是我得到了以下错误

File D:\Builds\SourceParent\Build_Name\DB_B\sql\debug\DB_B.dbschema does not exist
我在构建服务器上有一个DB_B的构建,但它位于不同的路径(构建定义不一定与项目名称匹配)

我想我可以在构建定义中添加一个构建事件来将.dbschema文件复制到服务器上的正确位置,但我不希望这样做。(这需要为每个生成定义使用一个特殊的生成模板。)


有什么方法可以使TFS构建点指向不同的位置吗?或者其他一些很好的方法来实现这一点?

我通过创建一个环境变量
$(DB\u SCHEMAS)
来解决这个问题,该变量指向我机器上的一个目录(例如
C:\dbschemas

然后,我在项目DB_B中添加了一个构建后事件,以将DB_B.dbschema复制到
$(DB_模式)

然后,我在项目DB\u a中添加了一个数据库引用,指向
$(DB\u模式)\DB\u B.dbschema
。请注意,VisualStudio将使用相对路径添加此引用。为了解决这个问题,我在解决方案资源管理器中卸载了项目,并编辑了提示路径以使用
$(DB_SCHEMAS)
环境变量

现在,我刚刚在TFS服务器上添加了这个环境变量,它将按预期工作。Building project DB\u B将其.dbschema文件复制到
$(DB\u架构)
(无论在何处),然后Building project DB\u A引用此方案

唯一的缺点是,我的队友都必须在他们的机器上添加这个环境变量,否则他们无法在本地构建