Косвенно существует.Если вы устанавливаете переменную среды с флагом и запускаете VS:
set TacoBuild=true
devenv.eve bigproject.sln
или запускаете MSBuild из командной строки:
msbuild /p:TacoBuild=true
В ваших файлах .csproj вам необходимо добавить PropertyGroup:
<PropertyGroup Condition="'$(TacoBuild)'=='true'">
<DefineConstants>$(DefineConstants);TacoBuild</DefineConstants>
</PropertyGroup>
В вашем коде вам нужен препроцессор def:
#if TacoBuild
const int myConst = 42;
#endif
Единственная альтернатива VS - это определить определение препроцессора в настройках сборки для новой конфигурации проекта и использовать этоКонфигурация в вашей сборке.
Решением, отличным от MSBuild, является создание файла constants.cs и создание инструмента пользовательских настроек, который обновляет файл cs.Хотелось бы, чтобы было лучшее решение, но я не нашел его.