MSBuild получает текущую конфигурацию из файла решения

StackOverflow https://stackoverflow.com/questions/1212133

  •  06-07-2019
  •  | 
  •  

Вопрос

В моем проекте VB.NET У меня есть три конфигурации DEBUG | TEST | RELEASE.

В настоящее время, когда я создаю с помощью MSBuild и TeamCity, я жестко кодирую конфигурацию, которая плохо пахнет!, для ТЕСТИРОВАНИЯ

<Configuration Condition=" '$(Configuration)' == '' ">Test</Configuration>

Теперь, прежде чем все закричат на меня, чтобы я не кодировал это жестко, причина, по которой это было сделано, заключалась в том, что мы, похоже, никогда не могли заполнить $ (Configuration).

Итак, мой вопрос заключается в MSBuild, как я могу прочитать текущую выбранную конфигурацию из файла решения, переданного в SVN?

Это было полезно?

Решение

Если я правильно помню, ты не можешь.Выбранная в данный момент конфигурация является пользовательской настройкой и поэтому сохраняется в файле .user или .suo, а не в файле решения.А проверка файлов пользовательских настроек в SVN разозлила бы других разработчиков.

В конфигурации TeamCity build runner вы можете выбрать как конфигурацию, так и цель, которую хотите создать.При сборке в командной строке вы также можете указать и то, и другое.Так зачем же вам нужно жестко закодировать их в одном из файлов проекта?

Кроме этого, мне нравится иметь тестовую цель вместо тестовой конфигурации, потому что это кажется более интуитивно понятным.Но, возможно, это всего лишь я.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top