起初,我在app.config文件中,在appSettings下存储了一些用户定义的设置。这些属性是用户在运行时可以更改的。我遇到的第一个问题是,当我用ClickOnce部署我的应用程序时,它覆盖了app.config文件,用户失去了他的个人设置。
然后,我将属性移到settings.settings文件(= app.config中的用户设置部分),因为我在互联网上发现,在使用ClickOnce进行部署时,这个部分不会被覆盖。不,是的..。Settings.Settings属性是:
因此,我如何才能做到我的用户的个人设置没有覆盖,无论是在app.config文件或settings.settings文件。或者还有别的办法我做错了吗?
谢谢!
发布于 2013-01-21 10:59:10
当使用ClickOnce部署应用程序的新版本时,此方法会复制上一次安装中的设置。因此,用户创建的任何用户定义的设置都将在更新后被复制并可用。我测试过这个,它对我有用。
public static void UpgradeUserSettings()
{
if (Settings.Default.upgradeRequired)
{
Settings.Default.Upgrade();
Settings.Default.upgradeRequired = false;
Settings.Default.Save();
}
} ApplicationSettingsBase.Upgrade方法
https://stackoverflow.com/questions/14400943
复制相似问题