Я не уверен, что потратил бы впустую database/ActiveRecord/Model наверху для такой главной потребности. Эти данные относительно статичны (я принимаю), и на лету вычисления не необходимы (включая поиски базы данных).
Однако я рекомендовал бы, чтобы Вы определили файл YAML с Вашим по всему сайту настройки и определили файл инициализатора, который загружает настройки в константу. Вы не будете иметь почти как многие ненужные подвижные части.
нет никакой причины, что данные не могли только находиться в памяти и сохранить Вас тонна сложности. Константы доступны везде, и их не должны инициализировать или инстанцировать. Если его абсолютно критическое, что Вы используете класс как одиночный элемент, я рекомендовал бы делать эти две вещи:
Вы можете использовать атрибут HandleError
в классе контроллера, чтобы перехватывать любые необработанные исключения, и он автоматически вернет представление Error.aspx в общей папке. Для этого атрибута есть перегрузки, поэтому вы можете использовать его только для определенных типов исключений и т. Д.
Для получения дополнительной информации об этом подходе ознакомьтесь с сообщением ScottGu об этом: http://weblogs.asp.net/ scottgu / archive / 2008/07/14 / asp-net-mvc-preview-4-release-part-1.aspx