Есть ли способ использовать BIML в BIML Express для переименования проектов - PullRequest
2 голосов
/ 04 июня 2019

Поскольку я больше не занимаюсь активной разработкой с использованием BIML Studio, я нахожусь в процессе преобразования существующих проектов, чтобы их можно было скомпилировать в Visual Studio с помощью BIML Express.

Поскольку мы постепенно удаляем SSIS, стоимость BIML Studio значительно перевешивает выгоду, и, в конечном счете, я все еще могу создать то, что мне нужно, с BIML Express.

В основном это были операции подъема и смены, за исключением двух вопросов:

  1. Параметры проекта (подробно документированные)
  2. Динамическое переименование проектов и результирующих пакетов ispac

Пункт 2 - это то, что я хочу попробовать.

Я использовал существующий код из моего проекта BIML Studio, который использует значения PackageProject Name и ProjectSubpath:

<Biml xmlns="http://schemas.varigence.com/biml.xsd">
    <Projects>
        <PackageProject Name="Project FooBarBaz" ProtectionLevel="DontSaveSensitive" ProjectSubpath="FooBarBaz" >
            <Parameters>                
                <Parameter DataType="String" IsRequired="true" Name="SomeParameter">abc</Parameter>
            </Parameters>
            <Packages>
                 <!-- Foreach block getting package names from Rootnode -->
            </Packages>
            <Connections>
                        <!-- some connections in here -->
            </Connections>
        </PackageProject>
    </Projects>
</Biml>

Используя вышеупомянутые теги, я ожидал, что имя проекта изменится в VS, но это не так. Имя проекта остается таким же, как значение в VS до того, как я сгенерирую пакеты служб SSIS.

Кто-нибудь знает, возможно ли это с помощью BIML Express? Или это похоже на проблемы, с которыми мы сталкиваемся, когда BIML не может генерировать параметры проекта?

Спасибо

1 Ответ

2 голосов
/ 04 июня 2019

Нет, название проекта не изменится с BimlExpress.

Логически, единственный способ активировать BimlExpress в visual studio - это контекст открытого проекта ssis.BimlStudio создает определение проекта при компиляции Biml вместе с пакетами, параметрами проекта и менеджерами соединений на уровне проекта.

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

Наконец, если ваше решение BimlStudio создало много проектов, вы можете сделать то же самое в BimlExpress.,Вам нужно написать свой собственный шим, чтобы собрать все артефакты для данного PackageProject и записать в файл.Самым большим, но уродливым будет то, что вам нужно предварительно рассчитать ваши руководства и явно назначить их менеджерам соединений, пакетам и т. Д., А затем вставить их в файл проекта.О, и я предполагаю, что уровень защиты проекта не является чувствительным.Я не хочу знать, как взломать этот орех ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...