web-dev-qa-db-fra.com

Comment obtenir la valeur de clé à partir du fichier AppSettings.Config?

J'essaie d'obtenir ma valeur de clé définie dans le fichier appsettings.Config mais ne semble pas fonctionner.

C'est ce que j'ai écrit pour ça. Le code est appelé depuis le constructeur d'un fichier MDI et sa valeur renvoyant uniquement une valeur nulle. Quelqu'un sait pourquoi?

     var getValue = ConfigurationSettings.AppSettings["ShowQueryTextbox"];

J'ai également essayé avec ConfigurationManager.AppSettings. Cela aussi n'a pas fonctionné.

Mon code AppSettings est le suivant.

<configuration>
  <appSettings>
    <add key="ShowQueryTextbox" value="true"/>
  </appSettings>
</configuration>
25
NewBie

Le problème survient lors du changement de nom du fichier App.Config en AppSettings.Config. Merci pour tous les conseils et aide.

4
NewBie

ConfigurationSettings.AppSettings sont obsolètes, essayez

ConfigurationManager.AppSettings["ShowQueryTextbox"];
25
Andreas Ågren

N'oubliez pas que pour utiliser:

ConfigurationManager.AppSettings["MyKey"];

Vous devez ajouter une référence à System.Configuration à votre projet.

13

Je peux obtenir comme ça:

System.Configuration.ConfigurationManager.AppSettings.Get("KEY").ToString();
1
Suresh Kamrushi

En supposant que vous l'ayez ajouté au fichier de configuration requis, pouvez-vous vérifier que la casse de la clé à laquelle vous essayez d'accéder est sensible à la casse, donc si vous avez saisi un cas différent, il ne renverra pas la valeur attendue.

0
V4Vendetta

Vérifier Properties.Settings.Default.ShowQueryTextbox.

0
Kirill Volynkin

Le ConfigurationManager est toujours à jour - Année 2017.

Btw, si vous voulez simplement convertir la valeur de configuration appsettings de chaîne en bool, utilisez alors Convert.ToBoolean

    if (Convert.ToBoolean(ConfigurationManager.AppSettings["EnableLoggingInfo"]))
    {
        log.Info(message);
    }

Dans la configuration de vos applications (web.config)

<appSettings>
    <add key="EnableLoggingInfo" value="true" />

  </appSettings>
0

Cette erreur peut également survenir si les paramètres d'application sont dans le mauvais fichier de configuration - par exemple, dans une application WCF, ce doit être celui du projet d'hébergement

0
James McDonnell