Есть ли способ установить, какие проекты создаются на основе переменной среды? - PullRequest
0 голосов
/ 08 января 2019

У меня есть решение с 15+ проектами. Я хочу исключить некоторые из этих проектов от компиляции, когда установлена ​​переменная окружения.

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

В идеале, если установлена ​​переменная окружения "BUILDCORE", я бы собрал только 7 из 15 проектов.

1 Ответ

0 голосов
/ 08 января 2019

Есть ли способ установить, какие проекты создаются на основе переменной среды?

AFAIK, прямого способа сделать это в Visual Studio нет. Но вы можете попробовать следующий обходной путь, проверить, работает ли он для вас.

Чтобы добавить пустой проект к решению, используйте Condition=" '$(ENVBuildSetValue)' == 'BUILDCORE' ", выгрузите свой проект. Затем в самом конце проекта, перед конечным тегом </project>, поместите ниже сценарии:

<Target Name="BuildCore" BeforeTargets="Build" Condition=" '$(ENVBuildSetValue)' == 'BUILDCORE' ">
    <Message Text="Build projects for build core!"></Message>
    <MSBuild Projects="..\theother\theother.csproj" Targets="Build" Properties="Configuration=xxxx;Platform=xxxx" />

    <MSBuild Projects="..\Another\Another.csproj" Targets="Build" Properties="Configuration=xxxx;Platform=xxxx" />
</Target>

Затем создайте этот проект, если установлена ​​переменная окружения "BUILDCORE".

Надеюсь, это поможет.

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