Запись конфигурации пользователя обратно в app.config в приложении.net
У меня есть приложение для Windows. Я записываю все пользовательские настройки в user.config.
Теперь в новом сценарии все изменения, которые делает один пользователь, должны отражаться для всех пользователей.
Для этого я решил записать настройки в app.config через
Properties.Settings.Default.p1 = value;
Properties.Settings.Default.Save();
И каждый пользователь читает обновленное значение по умолчанию после
Reset();
Но что бы я ни делал... он по-прежнему пишет user.config, а не app.config
1 ответ
По моему опыту, класс "Настройки" нельзя использовать для изменения значений параметров по умолчанию для всех пользователей. В этой ситуации я изменяю app.config напрямую, используя классы в пространстве имен System.Xml. Это не идеально, но я не нашел другого способа сделать это.
При изменении файла app.config необходимо учитывать несколько моментов:
- Если ваша программа установлена в папке Program Files, вам может потребоваться запустить приложение от имени администратора, чтобы сохранить изменения в файле. Это будет зависеть от того, как настроена ваша безопасность.
- Если вы измените пространство имен вашего класса "Настройки", это изменит структуру вашего файла app.config, поэтому вам придется обновить свой код, чтобы учесть новую структуру XML.
См. Эту статью MSDN для получения дополнительной информации о настройках приложения и области действия пользователя: http://msdn.microsoft.com/en-us/library/8eyb2ct1%28v=vs.110%29.aspx