В настоящее время мой проект поддерживает 2 версии, и теперь предполагается поддержка 3 версий.
В настоящее время это делается через x86
и x64
, когда я переключаюсь между ними, в моем файле проекта у меня есть условия для загрузки разных сборок, например:
Вер1
<Reference Include="SExtension" Condition="'$(Platform)' == 'x64'">
<HintPath>..\..\_libBinary\ver1\SExtension.dll</HintPath>
</Reference>
Вер2
<Reference Include="SExtension" Condition="'$(Platform)' == 'x86'">
<HintPath>..\..\_libBinary\ver2\SExtension.dll</HintPath>
</Reference>
Таким образом, в зависимости от платформы x86
ИЛИ x64
загружается другая сборка.
Согласно новому требованию, мне нужно добавить поддержку 3-й версии. (в ближайшее время будет еще один)
Я использую TeamCity для создания артефактов различных версий, которые получает конечный пользователь.
TeamCity использует шаги сборки, которые запускают процесс msbuild,
поэтому msbuild /p:Platform=x86
создайте другой артефакт, чем msbuild /p:Platform=x64
Я подумал о создании нового Configuration
с именем ver3
, как описано в здесь, а затем в файле проекта используйте:
<Reference Include="SExtension" Condition="'$(Configuration)' == 'ver3'">
<HintPath>..\..\_libBinary\ver3\SExtension.dll</HintPath>
</Reference>
Но я думаю, что это не предназначено для этого, поэтому я ищу другое решение.
Как я могу поддержать 3-ю версию?