Maison >développement back-end >C++ >Comment puis-je modifier de manière persistante les valeurs App.Config en C# ?

Comment puis-je modifier de manière persistante les valeurs App.Config en C# ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-01 01:53:10584parcourir

How Can I Persistently Change App.Config Values in C#?

Modification des valeurs App.Config

Problème :

Une tentative de modification d'une paire clé-valeur dans l'application. La configuration à l'aide de System.Configuration.ConfigurationManager.AppSettings.Set ne conserve pas la modification de la configuration fichier.

Code :

lang = "Russian";
private void Main_FormClosing(object sender, FormClosingEventArgs e)
{
     System.Configuration.ConfigurationManager.AppSettings.Set("lang", lang);
}

Raison :

AppSettings.Set ne modifie que les paramètres de configuration en mémoire ; il ne met pas à jour le fichier de configuration réel.

Solution :

Pour conserver les modifications, utilisez la fonction UpdateSetting :

class Program
{
    static void Main(string[] args)
    {
        UpdateSetting("lang", "Russian");
    }

    private static void UpdateSetting(string key, string value)
    {
        Configuration configuration = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
        configuration.AppSettings.Settings[key].Value = value;
        configuration.Save();

        ConfigurationManager.RefreshSection("appSettings");
    }
}

Remarque :

  • Lors du débogage, construisez le projet et lancez l'exécutable à partir de la sortie car Visual Studio écrase le fichier App.Config lors du débogage.
  • Pour vérifier les modifications, ouvrez le fichier YourApplicationName.exe.config dans le répertoire de sortie.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn