Я хочу использовать преобразование конфигурации для пользовательских файлов, если я заменю ???
на MSDeployPublish
, функциональность Preview
не будет работать и заменит локальные файлы в решении. Однако публикация работает без использования Preview
, сохраняя локальные файлы нетронутыми.
Файлы конфигурации:
AppSettings.config
└AppSettings.Test.config
└AppSettings.Stage.config
└AppSettings.Release.config
ConnectionString.config
└ConnectionString.Test.config
└ConnectionString.Stage.config
└ConnectionString.Release.config
Какое правильное имя цели, чтобы использовать преобразование для предварительного просмотра (без изменения файлов в soulution)? Способ, которым web.config
работает при предварительном просмотре с помощью webDeploy
<Target Name="???">
<TransformXml Source="App_Config\AppSettings.config" Destination="App_Config\AppSettings.config" Transform="App_Config\AppSettings.$(Configuration).config" />
<TransformXml Source="App_Config\ConnectionStrings.config" Destination="App_Config\ConnectionStrings.config" Transform="App_Config\ConnectionStrings.$(Configuration).config" />
</Target>
Я не хочу использовать какие-либо расширения, такие как SlowCheetah, просто встроить функциональные возможности.
<Target Name="Build">
также работает
ОБНОВЛЕНИЕ 1
Мне удалось опубликовать без изменений локальные файлы конфигурации:
Destination="$(_PackageTempDir)\App_Config\ConnectionStrings.config"
Но предварительный просмотр все еще не трансформирует конфиги (также, когда я определяю сообщение для вывода, оно не появляется). Какая черная магия происходит, когда я нажимаю «Предварительный просмотр» на экране публикации?
Я пробовал с целями: TransformWebConfigCore
, CopyAllFilesToSingleFolderForPackage
, GatherAllFilesToPublish