Простейший файл конфигурации создается через интерфейс студии (Решение - добавить элемент) и имеет следующую структуру.
<?xml version="1.0" encoding="utf-8" ?> <configuration> <appSettings> <add key="server" value="SOME_SERVER_NAME" /> <add key="database" value="SOME_DATABASE_NAME" /> </appSettings> </configuration>
По умолчанию в проекте он виден как App.config, в папке с программой как Имя_исполняемого_файла.exe.config. При отладке Visual Studio создает копии исполняемого файла и файла конфигурации, так что запись в конфиг работать не будет. Точнее говоря конфиг будет сбрасываться при каждом запуске.
Для работы с ним надо в References импортировать библиотеку System.Configuration и прописать ее в using
Базовый код для чтения параметра совсем прост
_serverTextBox.Text = ConfigurationManager.AppSettings["server"];
Для изменения чуть сложнее
System.Configuration.Configuration currentConfig = ConfigurationManager. OpenExeConfiguration( ConfigurationUserLevel.None); currentConfig.AppSettings.Settings["server"].Value = _serverTextBox.Text; currentConfig.AppSettings.Settings["database"].Value = _serverTextBox.Text; currentConfig.Save(ConfigurationSaveMode.Modified); ConfigurationManager.RefreshSection("appSettings");
Напоследок несколько экзотический сценарий - проверка наличия раздела в конфиге и его создание в случае отсуствия
if (!ConfigurationManager.AppSettings.AllKeys.Contains("someParameter")) { // открываем текущий конфиг специальным обьектом System.Configuration.Configuration currentConfig = ConfigurationManager. OpenExeConfiguration( ConfigurationUserLevel. None ); // добавляем позицию в раздел AppSettings currentConfig.AppSettings.Settings.Add("someParameter", ""); //сохраняем currentConfig.Save(ConfigurationSaveMode.Full); //принудительно перезагружаем соотвествующую секцию ConfigurationManager.RefreshSection("appSettings"); }
Подскажите пожалуйста, как с помощью app.config хранить приватные и публичные ключи (условие задачи). Суть в том ,что есть два приложения одно шифрует строку и записывает файл , второе считывает и расшифровывает. Не могли бы Вы привести пример передачи ключей RSA
Is that really all there is to it because that'd be flagserbabting.
Заработок через интернет официальная работа.
Сосни хуйка
Заработок на дому официальная работа.
Первый заработок за 60 минут. Законно и без рисков!
Мебель -> http://www.imp-mebeli.ru
Заработок через интернет официальная работа.
более непонятного объяснения я ещё не видел.