2012-05-30 1 views
0

Я просто собираю внутреннюю систему данных для клиента, который представляет собой ASP.NET VB, поддерживаемый базой данных SQL, на собственной IIS7.5 выделенный сервер.Где лучшее и простое место для хранения глобальных настроек веб-сайта

Я хочу сохранить некоторые глобальные параметры, такие как ограничения по возрасту для новостных статей, администратор контактов и т.д., в файле НЕ в базе данных (то есть, чтобы избежать ненужных запросы к базе данных в)

Где бы лучшее место хранить это будет? global.asax? app.config? или пользовательский XML-файл? как мне импортировать их во время выполнения? (вероятно, к сессии переменных)

ETA: Также - параметры должны быть доступны для редактирования внутри сайта, т.е. раздел админ я еще построить

+0

Я бы сказал App.config :) – IrishChieftain

+0

@Irish Может быть, вы средний web.config, но я выхожу из последних правил требований. –

+0

Да, вот что я имел в виду :) – IrishChieftain

ответ

1

Если вам нужны эти параметры могут редактироваться, то Простейшее место для их хранения будет в таблице базы данных. Вы уже создаете слой для ввода и вывода с помощью CRUD-операций, поэтому добавление этого небольшого дополнения не будет мешать вам. Это также поможет вам сохранить ваш web.config в чистом виде, а для ваших поддерживающих библиотек не потребуется дополнительный встроенный в него app.config.

Файлы ресурсов и встроенные файлы app.config не редактируются, поэтому эти предпочтительные методы не соответствуют вашим требованиям. Вы не хотите, чтобы люди напрямую обращались к web.config (даже через интерфейс), потому что изменения в файле web.config заставляют пул приложений перерабатывать. Пользовательский XML-файл будет работать, но вам нужно будет создать отдельный механизм синтаксического анализа, чтобы войти и выйти из него. Хотя это просто, это было бы необязательно, поскольку вы уже создаете интерфейс доступа для остальной части вашей базы данных.

Если вы действительно ненавидите себя, вы можете объединить эти два в пользовательский XML-файл, хранящийся в базе данных, как XElement.

+0

hhaha! «если ты действительно ненавидишь себя»! –

0

Спасибо за ваши предложения.

я решил самый простой метод, при условии, что детали могут только потребоваться изменение пару раз в год, должен был установить переменные сессии в global.asax

Смежные вопросы