Я хочу заменить web.config преобразованным файлом конфигурации отладки при работе в Visual Studio (мне НЕ интересно публиковать проект в какой-либо выходной каталог). Я хочу сохранить исходный файл web.config в корне веб-приложения в TFS, но во время выполнения (в IIS или Cassini) я хочу использовать преобразованную отладочную версию.
Лучший подход, который я нашел до сих пор (в Использовать Visual Studio web.config преобразования для отладки и веб-проектов ASP.NET: web.debug.config & web.release.config ) заключается в использовании web.template.config в качестве основного файла и web.config в качестве производного преобразованного файла. Меня это не совсем устраивает, потому что разработчики привыкли рассматривать web.config как мастер-файл.
У меня есть идея вывести преобразованный файл в каталог временных файлов ASP.Net, который ASP.NET использовал для кэшированных файлов.
Использует ли ASP.NET файл web.config из временной папки кэша? Разрешит ли ASP.NET иметь файл web.config в каталоге кеша, отличном от файла web.config в исходной папке?
Я нашел пару свойств, связанных с каталогом временных файлов ASP.Net. MSBuild свойство tempDirectory CompilationSection может использоваться для замены корневой папки временных файлов ASP.Net. ClientBuildManager. CodeGenDir Свойство дает доступ к определенной папке, в которой находится текущий кеш.
Однако я не смог найти, как получить доступ к пути к папке из MSBuild и позволит ли он мне вывести преобразованный web.config в кешированную папку.
Любые предложения/соображения будут оценены.