Как правильно хранить изменяемые пользователем (администратором) настройки веб-приложения? Возможные варианты:
- Использовать механизм Settings, то есть хранить настройки в .config файле. Но при таком подходе файл конфигурации должен быть доступен на запись, что может быть не очень хорошо для веб-приложения.
- Использовать специальную таблицу в базе. Если использовать базу, то какую структуру таблицы выбрать — своя колонка для каждого свойства и всего одна строка в таблице или два поля типа key и value и хранить по одной строке на каждое свойство?
Дополнение. Речь идет о глобальных настройках, действующих на всё приложение. Например, в различных CMS типичные настройки приложения — домен сайта, название сайта, e-mail администратора и т.п. Большинство CMS написанных php хранят такие натсройки в базе данных. Но в .NET есть специальный механизм для хранения настроек в файле Web.config. Вот и хотелось узнать, применим ли этот механизм для веб-приложений или лучше использовать базу данных?
Я видимо не совсем точно вначале сформулировал. Нужно хранить не настройки для определенного пользователя, а глобальные настройки приложения.