Я писал систему сборки на основе MSBuild, и я подошел к концу проекта, где мне нужно по существу запустить один файл msbuild 88 раз путем группирования по трем переменным:
Конфигурация = Отладка; Бета; Выпускать; Оценка
Platform = x86; x64
Язык = CN; CS; DE; EN; ES; FR; ЭТО; JP; КО; PL; TW
Я хочу построить:
«Отладка x86 CN», «Отладка x86 CS», ... «Отладка x86 TW»
«Отладка x64 CN», ...
Я, конечно, могу определить 88 из них:
<ItemGroup>
<ToBuild Include="Debug_x86_CN">
<Configuration>Debug</Configuration>
<Platform>x86</Platform>
<Language>EN</Language>
</ToBuild>
<ItemGroup>
А затем пакет на основе метаданных. Но что за тягость! Могу ли я создать 88 перестановок в коде, поэтому добавить язык так же просто, как добавить три символа в ItemGroup:
<ItemGroup>
<AllConfigurations Include="Beta; Release; Evaluation;"/>
<AllPlatforms Include="x86; x64" />
<AllLanguages Include="CN; CS; DE; EN; ES; FR; IT; JP; KO; PL; TW" />
</ItemGroup>