Развертывание и бизнес-правила BizTalk

#biztalk #biztalk-2013 #biztalk-deployment #biztalk-rule-engine #btdf

#biztalk #biztalk-2013 #biztalk-развертывание #biztalk-механизм правил #btdf

Вопрос:

Я новичок в разработке BizTalk, правильно использую его всего 6-7 недель, так что простите мою наивность.

У меня есть базовое приложение BizTalk 2013 в разработке, и я готов к развертыванию в тестовой среде.

Я использую бизнес-правила для определения местоположения исходящего транспорта, после выполнения всех преобразований данные отправляются в хранимую процедуру на SQL Server, которая вставляет / обновляет запись:

 mssql://.//db1?
  

При развертывании в наших тестовых / рабочих средах мы не сможем установить исходящее транспортное местоположение на локальном компьютере, поскольку базы данных будут храниться на отдельных серверах для приложения. Например:

 mssql://dbserver//db1?
  

Я просмотрел платформу развертывания BizTalk, чтобы узнать, можно ли изменять бизнес-правила в зависимости от среды, но ничего не смог найти.

Итак, мой вопрос в том, каков наилучший (с наименьшими затратами на обслуживание) способ управления настройками на основе среды для бизнес-правил? Предпочтительнее использовать платформу развертывания BizTalk.

Ответ №1:

Я опубликую решение, которое я использовал, для дальнейшего использования и чтобы помочь всем, кто столкнется с этим в будущем.

В среде развертывания BizTalk можно добавлять дополнительные XML-файлы в сборку и предварительно обрабатывать их таким же образом, как предварительно обрабатываются файлы привязки в зависимости от среды.

Ниже приведены некоторые фрагменты из файла deployment.btdfproj. Не забывайте, что в среде развертывания BizTalk порядок имеет важное значение:

 <!-- Add the policy file as an additional item to the build -->
<ItemGroup>
    <AdditionalFiles Include="my_policy_file.xml">
      <LocationPath>..$(ProjectName)location_to_policy</LocationPath>
    </AdditionalFiles>
</ItemGroup>

<!-- Processes the additional XML policy files added to the MSI main build folder. -->
<ItemGroup>
    <FilesToXmlPreprocess Include="my_policy_file.xml">
         <LocationPath>..</LocationPath>
    </FilesToXmlPreprocess>
</ItemGroup>

<!-- You still have to add the business rule to the build. It is overwritten later. -->
<ItemGroup>
    <RulePolicies Include="my_policy_file.xml">
        <LocationPath>..$(ProjectName)location_to_property</LocationPath>
    </RulePolicies>
</ItemGroup>

<!-- Towards the end of the file the pre-processed file overwrites the originally included policy file. -->
<Target Name="CopyXMLPreprocessedPoliciesToBRE" AfterTargets="PreprocessFiles">
    <copy sourceFiles="..my_policy_file.xml" DestinationFolder="..BREPolicies"/>
</Target>
  

Для получения дополнительной информации ознакомьтесь с этой веткой на сайте платформы развертывания BizTalk: https://biztalkdeployment.codeplex.com/discussions/392801