Что должно диктовать, когда я должен использовать configureManager.AppSettings или строго типизированные настройки, созданные visual studio? В большинстве случаев сильно типизированные типы кажутся гораздо более подходящими, но я полагаю, что можно было бы динамически добавлять настройки в развернутое приложение с использованием подхода ConfigurationManager, но есть ли какие-либо рекомендации, при каких обстоятельствах каждый из них предназначен для использования?
ConfigurationManager.AppSettings [ "SettingName" ] vs Properties.Settings.Default.SettingName, когда я должен использовать их каждый?
Ответ 1
Из чего я читает, выглядит как AppSettings - это более старый способ делать что-то. Документы MSDN что пользовательские настройки могут быть записаны во время выполнения, если вы используете настройки.
Я всегда предпочитаю строго типизированные настройки, которые могут быть реализованы с помощью обработчиков ConfigSection.
Плюсы и минусы appSettings vs applicationSettings (.NET app.config)
Ответ 2
Самое большое различие заключается в том, что сгенерированные свойства выполняются только для чтения, поэтому основной причиной использования AppSettings является то, что вы хотите их написать (что редко).
И да, вы можете использовать AppSettings для динамически генерируемых настроек, но это тоже редко.
Ответ 3
Я бы посоветовал, что свободно типизированные настройки более старые и действительно должны использоваться только для обратной совместимости.
Сильно типизированные настройки более надежны, поскольку они... строго типизированы.
Ответ 4
Используйте Properties.Settings.Default.SettingName. Но ConfigurationManager.AppSettings [ "SettingName" ] следует использовать только тогда, когда первый невозможно использовать.