Изменения документа Трансформация Web.config
Редактировал(а) Alexandr Fokin 2021/11/19 20:47
От версии 4.1
отредактировано Alexandr Fokin
на 2020/03/26 19:25
на 2020/03/26 19:25
Изменить комментарий:
К данной версии нет комментариев
К версии 7.1
отредактировано Alexandr Fokin
на 2020/03/26 19:56
на 2020/03/26 19:56
Изменить комментарий:
К данной версии нет комментариев
Сводка
-
Свойства страницы (1 изменено, 0 добавлено, 0 удалено)
Подробности
- Свойства страницы
-
- Содержимое
-
... ... @@ -3,16 +3,28 @@ 3 3 4 4 Если мы рассмотрим обычное приложение, то при запуске в VisualStudio оно собирается в папаку \<ProjectDir>\bin\<conf> и туда помещается трансформированный конфиг. 5 5 Например мы берем исходный конфиг \<ProjectDir>\app.config и накладываем на него app.<conf>.config результирующий файл помещается в \<ProjectDir>\bin\<conf> 6 -\<ProjectDir>\app.config + app.<conf>.config => \<ProjectDir>\bin\<conf>\*.config 6 +__\<ProjectDir>\app.config__ + __app.<conf>.config__ => __\<ProjectDir>\bin\<conf>\*.config__ 7 7 8 8 9 9 В случае же asp.net приложения при запуске проекта в VisualStudio (IIS express) в качестве конфига будет использован файл \web.config. Отсюда следует 2 факта 10 10 1) Мы не можем размещать какую либу конфигукрацию в web.config, если планируем проводить трансформацию. (Для основы следует использовать что то вроде web.base.config) 11 11 2) Результат транформации должен помещаться не только в папке конечного билда \<ProjectDir>\bin\, но и в папке самого проека \<ProjectDir>\web.config. Иначе при запуске в VisualStudio мы не получим нужную трансформацию. 12 -\<ProjectDir>\web.base.config + web.<conf>.config => \<ProjectDir>\web.config 13 -\<ProjectDir>\web.base.config + web.<conf>.config => \<ProjectDir>\bin\*.config 12 +__\<ProjectDir>\web.base.config__ + __web.<conf>.config__ => __\<ProjectDir>\web.config__ 13 +__\<ProjectDir>\web.base.config__ + __web.<conf>.config__ => __\<ProjectDir>\bin\*.config__ 14 14 15 15 16 16 Плагин SlowCheetah не учитывает данный аспект работы asp.net проекта, поэтому необходимо вручную внести изменения в .csproj файл проекта. 17 17 Это же касается и других .config файлов проекта (log4net.config) 18 18 19 +{{code language="xml"}} 20 +<Target Name="BeforeBuild"> 21 + <TransformXml Source="Web.base.config" Destination="Web.config" Transform="Web.$(Configuration).config" /> 22 +</Target> 23 +{{/code}} 24 + 25 + 26 + 27 +Ссылки: 28 +https://github.com/microsoft/slow-cheetah/issues/55 29 + 30 +