Écrire des valeurs dans l'app.fichier de configuration
quelqu'un peut s'il vous plaît aider moi comment puis-je régler/stocker des valeurs dans l'application.fichier de configuration à l'aide de c#, est-il possible?
- Avez-vous google ce tout?
- Pourriez-vous être un peu plus précis? Ce type de valeur est ce que vous voulez pas de magasin, et quand? En général, il n'est pas vraiment recommandé pour stocker l'ensemble de l'Application des valeurs (comme les chaînes ou les ints) dans l'Application de config.
- Poser une question qui me semble stupide par des pros, c'est tout droit, tout le monde commence avec le début. Cependant, ne prenant même une simple recherche google est juste boiteux.
- J'ai essayé et également cherché, essayé de plusieurs façons, mais recevais pas de chance. c'est pourquoi j'ai demandé si..
- Puisque vous semblez nouveau à tout cela, je tiens à ajouter que les paramètres doivent être à l'intérieur de votre <nom de l'application>.exe.fichier de configuration. Si vous essayez d'obtenir ou de définir à partir d'une dll (c'est à dire projet de bibliothèque de classes ou de tout autre projet, à l'exception de mstest projets de j'ai vu), ça ne marchera pas. Il VEUT votre application fichier exe! Vous aurez besoin de hackery autrement. Pour être clair, je me réfère à l'aide de la ConfigurationManager pour cela.
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez l'Application.Config pour stocker des valeurs dans
<app Key="" Value="" />
ou CustomSections section utilisation classe ConfigurationManager, d'autre classe XMLDocument.Vous pouvez utiliser le code affiché sur CodeProject
Essayez le code suivant:
Cela a fonctionné pour moi 🙂
Sur Framework 4.5 AppSettings.Réglages["clé"] partie de ConfigurationManager est en lecture seule, donc j'ai dû d'abord Retirer la clé, puis l'Ajouter à nouveau à l'aide de l'suivantes:
Ne vous inquiétez pas, vous n'obtiendrez pas une exception, si vous essayez de Supprimer une clé qui n'existe pas.
Ce post donne quelques bons conseils
Settings.Add()
, si l'entrée n'existe pas, il sera ajouté, si elle existe déjà, la valeur sera ajoutée à la valeur existante(s), séparés par une virgule. E. g. après l'appel deSettings.Add("myKey", "test")
4 fois, votre entrée sera le suivant:<key = "myKey" value = "test, test, test" />
Pour une .NET 4.0 application console, aucun d'eux n'a fonctionné pour moi. J'ai donc utilisé le suivant ci-dessous et il a travaillé:
Comme d'autres l'ont mentionné, vous pouvez le faire avec
ConfigurationManager.AppSettings.Settings
. Mais:À l'aide de
Settings[key] = value
ne fonctionnera pas si la clé n'existe pas.À l'aide de
Settings.Add(key, value)
, si la clé existe déjà, il rejoindra la nouvelle valeur de sa valeur(s) séparés par une virgule, quelque chose comme<add key="myKey" value="value1, value2, value3" />
Pour éviter ces résultats inattendus, vous avez à gérer deux scénarios
Code
Pour plus d'informations sur la vérification de
entry == null
, vérifiez ce post.Espérons que cela aidera quelqu'un.
Oui, vous pouvez - voir ConfigurationManager
Apprendre à utiliser le docs, ils devraient être votre premier port d'escale pour une question comme ça.
Essayez ce qui suit: