C#-Re -инициализировать статический класс?

У меня есть класс в веб-приложении, над которым я работаю, который содержит настройки клиента. По какой-то причине я не владею этим классом, и изменить его не вариант. Недавно мы добавили некоторую логику для хранения настроек в базе данных, и мне поручили создать страницу для их редактирования, что справедливо.

Вот моя проблема; настройки хранятся в статическом классе и сами по себе являются статическими свойствами только для чтения -. Например

public static class Settings
{
 public static readonly setting1 = SettingmanagerClass.GetSetting("setting1");
 public static readonly setting2 = SettingmanagerClass.GetSetting("setting2");
 public static readonly setting3 = SettingmanagerClass.GetSetting("setting3");
}

Теперь, например, через страницу, которую я написал, меняем значение для settings2 на "Happy Variable"; он отлично сохраняется в БД, но теперь мне нужно, чтобы он отражался в веб-приложении как новое значение. Поскольку это статическое свойство статического класса, доступное только для чтения, оно вызывается только при первом подключении приложения и не может быть установлено вручную.

Повторюсь, я не владею исходным классом, поэтому вариант «просто сделать свойства доступными для записи» (в настоящее время )недопустим. Обычно я бы просто обсудил это со своим боссом, и он вынес бы решение и, возможно, разрешил бы мне изменить другой класс, но я не в состоянии сделать этот звонок, и он отсутствует в офисе в течение недели.

Итак, в основном; Есть ли способ повторно -инициализировать статический класс после запуска веб-приложения? Мне просто нужно, чтобы он перезагрузил все свои свойства, как если бы приложение было только что перестроено и запущено снова.

7
задан ddietle 23 April 2012 в 15:01
поделиться