Question

Je suis en train de changer dans l'exécution d'une clé de mon fichier paramètres des applications, mais il ne fonctionne pas.

Je fais de cette façon:

ConfigurationSettings.AppSettings["XPTO"] = "HELLO";

Il semble que cela ne change que dans la mémoire, pas sur le fichier.

Est-ce que quelqu'un sait comment faire cela?

Merci.

Était-ce utile?

La solution

Jetez un oeil à mon aperçu de fichiers de paramètres .NET ... bref, je pense que vous voulez un cadre scope utilisateur. Il se comportera plus comme prévu.

  

Modifier Si vous utilisez la balise paramètres concepteur Visual studio, puis changez simplement la « portée » à « utilisateur ». Sinon, vous devriez être en mesure de faire l'équivalent d'un programme.

Autres conseils

Le fichier AppSettings n'a pas été conçu pour être accessible en écriture. Il est conçu pour stocker des configurations qui ne changeront pas au moment de l'exécution, mais pourrait changer au fil du temps: par exemple. DB chaînes de connexion, le service Web URL, etc

Ainsi, alors qu'il est possible de mettre à jour le fichier en réalité, vous devez re-culs si cette valeur doit y être stockés.

En supposant que votre application dispose des autorisations d'écriture sur le fichier ...



    Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);  // the config that applies to all users
    AppSettingsSection appSettings = config.AppSettings;

    if (appSettings.IsReadOnly() == false)
    {
        appSettings("Key").Value = "new value";

        config.Save();
    }

J'ignore toutes les exceptions possibles qui peuvent être levées ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top