Преимущества Appsettings appsettingsreader vs configurationmanager для чтения настроек конфигурации приложения
-
29-09-2019 - |
Вопрос
Существует ли существенная разница между классом 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 плавает вашей лодке».