Различные параметры конфигурации на разработчика для c# библиотеки классов

Мы - малочисленная команда, работающая над веб-проектом asp.net, а также сервисом, оба проекта, зависящие от общей библиотеки классов.

Мы хотели бы иметь настройки библиотеки классов, отличающиеся на разработчика (и позже для производства). В настройках включенная уязвимая информация, такая как пароли, а также имена хостов.

Как мы должны присвоить эти настройки?

Если я не ошибаюсь, web.config/application настройки не достаточно хороши, поскольку они не работают на общую библиотеку классов.

PS: Кроме того, некоторые переменные должны быть статически связаны, и остальные (такие как connectionstrings) должны быть динамичными.

6
задан rstackhouse 23 August 2013 в 18:03
поделиться

1 ответ

Файлы web.config app.config считываются с любого запущенного веб-сайта или приложения. Т.е. любые файлы настроек приложения в библиотеке классов не используются. Например, любые ссылки на ConfigurationManager.ConnectionStrings ConfigurationManager.AppSettings в библиотеке классов будут использовать любой файл web.config/app.config, определенный в приложении, использующее библиотеку классов, а не любой файл .config, который может быть установлен в самой библиотеке классов.

Самый простой способ управлять различными параметрами для каждого разработчика и для рабочей области — сохранить конфигурацию в другом файле, например

<appSettings configSource="Web.appSettings.dev.config"/>

У каждого разработчика есть свой собственный файл Web.appSettings.dev.config, который не входит в систему управления версиями. Когда в рабочей области вы просто меняете на:

<appSettings configSource="Web.appSettings.live.config"/>

Вам просто нужно убедиться, что у вас есть какой-то шаблон Web.appSettings.template.config в svn, который является главным, но не имеет никаких настроек, и вручную управляется, чтобы все новые ключи или строки подключения, добавленные в шаблон, также добавлялись в каждый файл devs и рабочий файл.

2
ответ дан 17 December 2019 в 20:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: