Мне известно, что подобных вопросов по SO много, но у меня есть предостережение.
Основная предпосылка предсказуема: я унаследовал продукт, состоящий из нескольких компонентов, каждый из которых имеет несколько параметров конфигурации, среди которых главный в строке подключения. В настоящее время эти компоненты вызывают веб-службу с хешированным паролем для получения строки подключения (blegh), но это иногда вызывает условия гонки при запуске Windows между веб-службами и службами NT, требующие значений конфигурации.
Я хочу создать элегантное решение, которое позволит мне делиться этими настройками из единого и безопасного места, то есть реестра или machine.config. Любой из них будет легко реализован при наличии единой среды развертывания, но (в этом-то и проблема) один из компонентов представляет собой приложение, запускаемое одним щелчком мыши.
Итак, в двух словах, мой вопрос заключается в следующем: как я могу создать централизованный механизм для параметров конфигурации, который также будет распространяться на развертывания по принципу "один клик"?
Опции, которые я рассмотрел:
Насколько я могу судить, оба эти решения зависят от наличия локальной копии общего файла конфигурации, которая не будет работать при однократном нажатии.
Две вещи, которые стоит отметить в нашей среде развертывания для приложения "нажми один раз":
- Развертывания всегда выполняются в корпоративной сети LAN, поэтому такие параметры конфигурации, как строка подключения, универсально применимы.
- Параметры конфигурации, которые упаковываются вместе с приложением «нажми один раз» после установки, могут быть переопределены при последующем развертывании.