В настоящее время я работаю с системами, которые имеют довольно много параметров конфигурации, которые зависят от конкретной среды (Dev, UAT, Production). У кого-нибудь есть предложения по минимизации изменений, необходимых для файла конфигурации при перемещении между средами, а также по минимизации дублирования данных в файле конфигурации?
В основном это настройки приложения, а не настройки пользователя.
То, как я сейчас это делаю, примерно так:
<DevConnectionString>xyz</DevConnectionString>
<DevInboundPath>xyz</DevInboundPath>
<DevProcessedPath>xyz</DevProcessedPath>
<UatConnectionString>xyz</UatConnectionString>
<UatInboundPath>xyz</UatInboundPath>
<UatProcessedPath>xyz</UatProcessedPath>
...
<Environment>Dev</Environment>
И затем у меня есть класс, который читает в настройках среды через класс My.Settings
(это проект VB), а затем использует его, чтобы решить, какие другие настройки получить. Это приводит к слишком большому дублированию, поэтому я не уверен, стоит ли оно того.