Преимущества Appsettings appsettingsreader vs configurationmanager для чтения настроек конфигурации приложения

StackOverflow https://stackoverflow.com/questions/3497768

Вопрос

Существует ли существенная разница между классом AppsettingsReader и членом AppSettings класса ConfigurationManager в .NET 3.5?

Я создаю несколько устаревших кодов и предыдущий разработчик использовал AppsettingsReader.getValue (), тогда как я более склоннулся использовать ConfigurationManager.appsettings.get ().

Глядя на внутренние, AppSettingReader, кажется, более типов, но его использование кажется немного более многословным. Если настройки приложения, которые я получаю, хорошо известны и довольно статичны, есть ли выгода для использования AppSettingSreader?

Это было полезно?

Решение

Не совсем. Внутренне AppsettingsReader просто использовал ConfigurationManager.appsettings.

В основном есть немного пуха вокруг проверки того, что он существует, проверяя, что то, что происходит, нормально и т. Д.

Одна вещь заключается в том, что это вызовет исключение, когда в приложениях нет элемента.

    // From CTOR
    this.map = ConfigurationManager.AppSettings;

    ....
    public object GetValue(string key, Type type)

       ...

       string item = this.map[key];
       if (item == null)
       {
           throw new InvalidOperationException(SR.GetString("AppSettingsReaderNoKey", new object[] { key }));
       }

Я думаю, что большинство людей просто будут использовать ConfigurationManager, но реальный ответ - «Wahtever плавает вашей лодке».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top