MSBuild и BizTalk - PullRequest
       51

MSBuild и BizTalk

0 голосов
/ 17 января 2012

Можно ли указать (или переопределить) Deploy ApplicationName, сервер базы данных и имя базы данных для проектов BizTalk? Если так, то как?

К сожалению, эти данные хранятся в файле btproj.user, а не в файле .btproj, и мой клиент не хочет проверять файлы btproj.user в системе управления версиями.

(К вашему сведению - мы используем генератор сборки BizTalk из CodePlex.)

1 Ответ

2 голосов
/ 17 января 2012

Я только что просмотрел источник на 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 в VS или TeamBuild, используя переключатель свойств

msbuild.exe MyBizTalkProject.proj /p:BizTalkDatabaseServerName=SqlCluster 

Разработчик этого проекта должен переписать файл MSBuild.Custom.properties по умолчанию, чтобы он выглядел следующим образом

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

. При использовании этого подхода "."идентификатор (для локального SQL Server) будет использоваться только в том случае, если значение параметра не указано.Потому что с текущей реализацией определение свойства может!переопределить значение, переданное из командной строки.Так что знайте об этом.

...