Расширяя ответ Tom Brothers выше, мы используем задачу <XmlMassUpdate>
в Задачах сообщества MSBuild, чтобы объединить специфичный для развертывания web.config, который содержит несколько изменений, применяемых к базе web.config
для изменения параметра отладки, соединение строки, конфигурация логирования и т. д. Таким образом, веб-проект содержит web.config
с конфигурацией, необходимой для запуска с машин разработки. Также есть файл web.Release.config
, который содержит только те изменения, которые нам нужно применить к web.config для создания конфигурации на рабочем веб-сервере.
Поскольку дополнительный файл содержит только изменения (дельты) для применения к web.config
, он не очень большой. Visual Studio игнорирует его во время разработки, а CruiseControl.Net применяет изменения к web.config
при развертывании на веб-сервере.