MSBuild和BizTalk

MSBuild和BizTalk,msbuild,biztalk,biztalk-2009,biztalk-deployment,Msbuild,Biztalk,Biztalk 2009,Biztalk Deployment,是否可以为BizTalk项目指定(或覆盖)部署应用程序名称、数据库服务器和数据库名称?如果是,怎么做 不幸的是,这些数据存储在btproj.user文件而不是.btproj文件中,我的客户端不想将btproj.user文件签入源代码管理系统 (仅供参考-我们正在使用CodePlex中的BizTalk Build Generator。)我刚刚查看了CodePlex上的源代码。当我正确理解了每件事后,它们就产生了 %AppName%.Custom.targets %AppName%.Custom.p

是否可以为BizTalk项目指定(或覆盖)部署应用程序名称、数据库服务器和数据库名称?如果是,怎么做

不幸的是,这些数据存储在btproj.user文件而不是.btproj文件中,我的客户端不想将btproj.user文件签入源代码管理系统


(仅供参考-我们正在使用CodePlex中的BizTalk Build Generator。)

我刚刚查看了CodePlex上的源代码。当我正确理解了每件事后,它们就产生了

%AppName%.Custom.targets
%AppName%.Custom.properties
档案。在属性文件中,列出了BTS数据库连接的一些属性

<BizTalkDatabaseServerName>.</BizTalkDatabaseServerName>
<BizTalkManagementDatabaseName>BizTalkMgmtDB</BizTalkManagementDatabaseName>
<BizTalkManagementDatabaseConnectionString>
 server=$(BizTalkDatabaseServerName);
 database=$(BizTalkManagementDatabaseName);
 integrated security=sspi;
</BizTalkManagementDatabaseConnectionString>
<PipelineComponentsFolderPath>C:\Program Files\Microsoft BizTalk Server 2010\Pipeline Components</PipelineComponentsFolderPath>
此项目的开发人员应重写默认的MSBuild.Custom.properties文件,使其如下所示

<BizTalkDatabaseServerName Condition="'$(BizTalkDatabaseServerName)'==''">.</BizTalkDatabaseServerName>
通过使用这种方法,“.”标识符(用于本地SQL Server)仅在未为参数提供任何值时使用。因为在当前的实现中,属性的定义可以!重写从命令行传递的值。所以要意识到这一点

<BizTalkDatabaseServerName Condition="'$(BizTalkDatabaseServerName)'==''">.</BizTalkDatabaseServerName>