构建sqlproj时指定连接字符串

3
我们已经开始使用本地 SQL Servers(SQL 2012)进行开发。我们有一个工具调用 MSBUILD 来将 SQL Project (.sqproj) 部署到我们的本地、dev 和测试数据库中。
现在出现了一个要求,我们希望使用该工具来部署到其他本地数据库 - 这是一件罕见但必要的事情。
我们为每个正常环境(dev.publish.xml、test.publish.xml、local.publish.xml,其中 local 指向 (local)\SQL2012)设置了 .publish.xml 文件。
我们通常运行:
msbuild.exe /t:build;publish /p:SqlPublishProfilePath="Local.publish.xml" "c:\workspaces\greg\...\databaseProject.sqlproj"

这很好,因为它从local.publish.xml文件中获取连接字符串,并将sql项目部署到我们的本地数据库。

我不确定如何覆盖发布文件以使其指向不同的数据库。

我尝试过:

msbuild.exe /t:build;publish /p:SqlPublishProfilePath="Local.publish.xml" /p:TargetConnectionString="Data Source=SomeOtherPC\SQL2012;Integrated Security=True;Pooling=False" "c:\workspaces\greg\...\databaseProject.sqlproj"

但它仍然指向(local)\sql2012而不是SomeOtherPC\SQL2012。
1个回答

2

为此创建一个不同的发布配置文件,并填写所需的详细信息(SomeOtherPC、SQL 2012等)。

SomeOtherPC.publish.xml

将其作为参数传递给MSBuild。
msbuild.exe /t:build;publish /p:SqlPublishProfilePath="SomeOtherPC.publish.xml"

谢谢。这就是我们最终所做的,我只是忘记回来更新答案了。 - Greg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接