当配置文件位于应用程序目录中时,我可以从 .config 文件中读取并将更改写回它。由于用户权限,我现在想更改它并将我的 .config 文件移动到 users/xxx/local 目录。我已经了解到您需要将 SectionInformation.AllowExeDefinition 属性更改为 ConfigurationAllowExeDefinition.MachineToLocalUser 但我无法更改 AppSettings 部分的此属性。
这就是我从 AppSettings 中读取的方式
//Read COM Port settings
UIModel_settings.COMport = System.Configuration.ConfigurationManager.AppSettings.Get("COMPort");
这就是我写 AppSettings 的方式
System.Configuration.Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal);
config.AppSettings.Settings["COMPort"].Value = UIModel_settings.COMport;
config.Save(ConfigurationSaveMode.Modified);
ConfigurationManager.RefreshSection("appSettings");
当我运行时,我在 Save 方法中遇到锁定错误:ConfigurationSection 属性在锁定时无法编辑。
任何想法如何解决这一问题?或者我如何在我的本地用户目录下创建这个文件?
谢谢
杰尔