Я добавил в свой проект файл App.config. Я создал две настройки из Project> Properties> Settings panel -
Я заметил, что когда я добавляю параметр, я могу определить область действия как User
или Application
. -
- Пользователь
- заявка
Если я определяю настройку по мере User
перехода к userSettings
разделу,
если я определяю настройку по мере Application
перехода к applicationSettings
разделу
App.config
<configuration>
<userSettings>
<DemoApp.Properties.Settings>
<setting name="MySetting1" serializeAs="String">
<value>Value1</value>
</setting>
</DemoApp.Properties.Settings>
</userSettings>
<applicationSettings>
<DemoApp.Properties.Settings>
<setting name="MySetting2" serializeAs="String">
<value>Value2</value>
</setting>
</DemoApp.Properties.Settings>
</applicationSettings>
</configuration>
Но к этим настройкам можно получить доступ таким же образом из .cs
-
Код
string mySetting1 = DemoApp.Properties.Settings.Default.MySetting1;
string mySetting2 = DemoApp.Properties.Settings.Default.MySetting2;
В чем разница между User
и Application
объемом и при каких обстоятельствах следует выбирать между этими двумя?
источник
Источник на msdn: использование настроек в C #
Пользовательские настройки обычно используются для сохранения пользовательских настроек (например, настроек уведомлений приложений и т. Д.). Настройки приложения обычно используются для таких элементов, как ключи API и т. Д.
Как отмечает @kmote, когда пользовательские настройки изменяются и сохраняются во время выполнения (через
settings.Save()
), они будут записаны в папку в хранилище профилей пользователей (обычно C: \ Users \ Username \ AppData \ Local \ AppName в Windows 7 и выше. ). Чтобы определить местоположение файла программным способом, см. Этот пост .источник
Settings.Save()
), будет создан новый файл конфигурации, который будет скрыт / закопан в C: \ Users [имя пользователя] \ AppData \ Local \ Microsoft. С этого момента при каждом запуске приложения пользовательские настройки будут извлекаться исключительно из этого файла, и любые изменения, внесенные вручную в App.config или Settings.settings, будут игнорироваться.