Вы можете сделать это:
- создать
solution.config
в папке вашего решения в app.config
каждого проекта, добавить его в ваш <appSettings>
узел:
<appSettings file="solution.config">
....
</appSettings>
Вы должны будете поместить символические ссылки на ваш общий solution.config
в каждую папку проекта, но у вас может быть один физический файл, которым вы делитесь между проектами.
Узел <appSettings>
является единственным, который позволяет подобного рода "кумулятивные" настройки - те из файла, который указан в file=
, будут добавлены в настройки вашего приложения, но потенциально могут быть перезаписаны любым указанным вами параметром.явно в вашем app.config
.
С другой стороны, да, конечно, вы можете использовать базу данных.Мы делаем это также в большинстве наших проектов, поскольку у нас обычно есть доступ к базе данных, но не к файловой системе на серверах клиента.Я не понимаю, почему это обязательно должно быть плохо - у нас есть настройки для DEV, TEST и PROD в таблице - поэтому у вас есть все ваши настройки в одном месте - и мы выбираем те настройки, которые нам нужны, когда они нам нужны.Работает просто отлично - конечно, некоторые настройки, такие как строки подключения к базе данных, не могут быть сохранены там, но основная часть нашей информации о конфигурации есть.Опять же: я действительно не вижу причин, по которым этот выбор должен быть плохим сам по себе - поэтому, если ваш источник не сможет подтвердить свое заявление некоторыми фактами и причинами, я бы его проигнорировал.