Могу ли я отключить преобразования SlowCheetah при запуске не веб-приложения в Visual Studio

У меня есть SlowCheetah как часть процесса сборки TeamCity для преобразования файлов app.config.

Я знаю, что в случае веб-приложений запуск приложения в локальном отладчике Visual Studio НЕ преобразует соответствующий файл web.config. Я предположил, что это поведение было таким же для файлов app.config, но сегодня я обнаружил, что когда я запускаю приложение консоли или службы Windows из локального VS 2012 (например, в отладчике), app.config преобразуется.

Есть ли способ предотвратить преобразование app.config при запуске не-WAP-проекта в отладчике?


person Redeemed1    schedule 17.05.2013    source источник


Ответы (1)


Есть простой способ сделать это.

Откройте файл csproj для проекта (например, проект службы Windows) в редакторе (вы можете щелкнуть правой кнопкой мыши | Выгрузить проект в обозревателе решений VS, а затем «Редактировать файл проекта», чтобы отредактировать содержимое файла в Visual Studio).

Найдите строку, содержащую следующее:

<Import Project="$(SlowCheetahTargets)" Condition="Exists('$(SlowCheetahTargets)')" Label="SlowCheetah" />

и измените его следующим образом:

<Import Project="$(SlowCheetahTargets)" Condition="Exists('$(SlowCheetahTargets)')and '$(IsDesktopBuild)' == 'false'" Label="SlowCheetah" />

Это отключит преобразования, когда вы находитесь на своем локальном компьютере, но они будут продолжать преобразовываться на сервере сборки.

person Redeemed1    schedule 29.05.2013
comment
почему у меня не было этой строчки? - person NullVoxPopuli; 25.03.2015
comment
@NullVoxPopuli Я не уверен, что понимаю ваш вопрос. Если вы спрашиваете, почему у вас не было бы строки SlowSheetahTargets (первая строка кода выше), то это было бы потому, что вы не указали SlowCheetah. - person Redeemed1; 27.03.2015
comment
@NullVoxPopuli помните, что лучший способ использовать SlowCheetah - через nuget. Однако вы увидите, что разработчик не будет заниматься дальнейшей разработкой SlowCheetah. - person Redeemed1; 27.03.2015
comment
Да, я действительно удивлен, что такие вещи не просто встроены в VS - person NullVoxPopuli; 27.03.2015