Как преобразовать файлы конфигурации с медленным гепардом при сборке в веб-проекте

Итак, я хочу выполнить преобразование всех файлов конфигурации в сборке.

  • Web.config
  • App.config
  • ....конфиг.в XML

в файлы проекта, все они выглядят так:

<None Include="FooBar.config.xml">
  <TransformOnBuild>true</TransformOnBuild>
</None>
<None Include="FooBar.config.Release.xml">
  <DependentUpon>FooBar.config.xml</DependentUpon>
  <IsTransformFile>True</IsTransformFile>
</None>

и все отлично работает для служб windows и приложений windows. Но для веб-проектов медленный гепард не делает преобразований. После некоторых исследований я нашел это : "Для веб-проектов файлы преобразуются при публикации или упаковке приложения."От медленного страницу расширения гепарда. И действительно, когда я публикую веб-проект, преобразования выполняются правильно.

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

среда:

  • TFS 2010
  • медленная версия гепарда на сервере сборки: 1.0.10727.0

2 ответов


Так как я это исправил. Я отредактировал файл targets из SlowCheetah

Это можно найти C:\Users\BuildUser\AppData\Local\Microsoft\MSBuild\SlowCheetah\v1 На вашем сервере сборки. Откройте файл и найдите следующие строки:

<BuildDependsOn Condition=" '$(IsWap)'!='true' ">
    <BuildDependsOn> 
      $(BuildDependsOn);
      TransformAllFiles
    </BuildDependsOn>

и я удалил состоянии.

результат:

<BuildDependsOn> 
  $(BuildDependsOn);
  TransformAllFiles
</BuildDependsOn>

в наши дни есть лучшее решение. Просто используйте задачу transformxml msbuild. Я не думаю, что медленный гепард будет продолжать поддерживаться теперь, когда эта функциональность является родной для msbuild. Больше на https://msdn.microsoft.com/en-us/library/dd465326 (v=против 110).aspx