通过点击一次部署在更新中持久化app.config变量 [英] Persisting app.config variables in updates via Click once deployment
问题描述
每次点击一次的应用程序发布新的更新时,app.config文件中的变量将被销毁。
Every time a new update is released for an application with click once, the variables in the app.config file are destroyed
<userSettings>
<app.My.MySettings>
<setting name="Email" serializeAs="String">
<value />
</setting>
<setting name="UserName" serializeAs="String">
<value />
</setting>
</app.My.MySettings>
</userSettings>
我该如何防止?
有没有办法从以前的应用程序版本中修改变量?
Is there any way of feching the variables from the previous application version?
推荐答案
有没有选中应用程序应该检查更新选项?
Do you have the "Applications should check for updates" option checked?
看看探索持久应用程序设置的秘密(标题为维护程序版本之间的设置):
Have a look at Exploring Secrets of Persistent Application Settings (the section titled "Maintaining Settings Between Program Versions"):
对于与
以前版本中的设置相匹配的当前
版本的任何设置,此例程将
导入到当前版本的
user.config文件:
For any settings from the current version that match settings in the prior version, this routine will import them into the current version's user.config file:
在程序的入口点放置以下代码。
At the entry point to your program, place the following code.
if (Properties.Settings.Default.UpgradeSettings)
{
Properties.Settings.Default.Upgrade();
Properties.Settings.Default.UpgradeSettings = false;
}
请注意,UpgradeSettings是布尔型用户设置而不是应用程序)您需要添加自己,并且您希望默认值为 True
。
Note that UpgradeSettings is a boolean user setting (not application) that you need to add yourself, and you want the default value to be True
.
这篇关于通过点击一次部署在更新中持久化app.config变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!