Я боролся с этим в течение часа и не могу найти ни простого объяснения, ни хотя бы какой-нибудь документации Microsoft, в которой говорится об этом.
Я хочу понять поведение следующих файлов:
- Web.config
- Web.Debug.config
- Web.Release.config
- Web.Staging.config (я создал это, щелкнув правой кнопкой мыши на Web.config -> Добавить преобразование конфигурации)
Я добавил следующее приложение, устанавливающее в Web.config файл:
<configuration>
..
<appSettings>
<add key="DevDisplayPanel" value="default value" />
</appSettings>
..
</configuration>
В моем Web.Debug.config Я изменил DevDisplayPanel на это:
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<appSettings>
<add key="DevDisplayPanel"
xdt:Transform="Replace"
xdt:Locator="Match(key)"
value="Debug mode" />
</appSettings>
</configuration>
Я отобразил элемент appSettings так:
ViewBag.Test = System.Configuration.ConfigurationManager.AppSettings["DevDisplayPanel"];
Я понял, что еслиЯ запускаю Debug -> Start Debugging в Visual Studio , чтобы параметр DevDisplayPanel читался из Web.Debug.config .Я не могу найти документацию Microsoft об этом.
Я пытался запустить свое веб-приложение, используя конфигурацию решения Debug, Release и Staging, но все они показывают значение DevDisplayPanel из файла Web.config .
Где находятся файлы Web.Debug | Release | MyConfiguraton.config вступают в игру.Что я пропустил и, самое главное, это поведение должно быть выделено жирным шрифтом где-то в документах !!