views:

1391

answers:

1

Every time a new update is released for an application with click once, the variables in the app.cofig 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>

How can i prevent that?

Is there any way of feching the variables from the previous application version?

+5  A: 

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"):

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:

if (Properties.Settings.Default.UpgradeSettings) 
{
   Properties.Settings.Default.Upgrade();
   Properties.Settings.Default.UpgradeSettings = false;
}
Mitch Wheat
Note that UpgradeSettings is a boolean setting that you need to add yourself, and you want the default value to be True. (This is explained in the article.)
Pat