пользовательский файл конфигурации в asp.net - PullRequest
0 голосов
/ 01 ноября 2011

В моем проекте мне нужно хранить сложные настройки приложения, и я не хочу хранить его в БД.

Настройки приложения доступны через интерфейс администрирования для редактирования / изменения и т. Д.

Итак, если ясохранять настройки в config, каждый раз, когда изменяется конфигурация, приложение перезапускается.

Поэтому вторая идея - загрузка внешнего файла из файла (например, «AppSettings.conf»), хранящегося в проекте.

Вопрос довольно прост: Можно ли загрузить и сохранить настройки из внешнего файла без перезапуска приложения?

Спасибо

Ответы [ 3 ]

0 голосов
/ 01 ноября 2011

Вместо создания пользовательского файла конфигурации создайте пользовательский раздел конфигурации для web.config:

Вот только пример:

public class SomeConfigurationSection: ConfigurationSection
{
    [ConfigurationProperty("configurationData")]
    public string ConfigurationData
    {
        get
        {
            return this["configurationData"] as string;
        }
        set
        {
            this["configurationData"] = value;
        }
    }

    [ConfigurationProperty("otherConfigurationData")]
    public int OtherConfigurationData
    {
        get
        {
            return Convert.ToInt32(this["otherConfigurationData"]);
        }
        set
        {
            this["otherConfigurationData"] = value;
        }
    }
} 

РЕДАКТИРОВАТЬ

Другое возможное решение - использовать файл Settings.setttings в папке «Свойства».Я полагаю, что вы можете добавлять, редактировать и удалять настройки здесь без перезапуска приложения:

//add a setting
Properties.Settings.Default.Context.Add("foo", "bar");

//edit a setting
Properties.Settings.Default.Context["foo"] = "bar";

//remove a setting
Properties.Settings.Default.Context.Remove("foo");

Вы можете получить доступ к этому файлу в папке Properties или в окне свойств веб-приложения (Свойства> Настройки).

0 голосов
/ 01 ноября 2011

Наконец-то решили сохранить / загрузить настройки приложения в дБ.

0 голосов
/ 01 ноября 2011

да, сохраните настройки в файле XML, и вы можете читать / записывать в / из файла XML просто отлично. Но вы не можете указать ни один из существующих компонентов, хранящихся в файле web.config (например, элементы <authentication> или <authorization>), на этот файл XML ... который не будет работать. Только ваши пользовательские настройки.

НТН.

...