57 votes

ConfigurationManager.AppSettings devient nul ?

Je ne m'en suis pas rendu compte : j'avais un web.config dans une bibliothèque de classe séparée et que je lisais les paramètres de l'application web.config depuis une autre application web.

J'utilise VS2010 target framework 3.5.

Je ne sais pas ce qui ne va pas ici mais j'obtiens null quand j'essaie d'obtenir ConfigurationManager.AppSettings["StoreId"];

private string _storeid = GetStoreId;

public static string GetStoreId
{
    get
    {
        return ConfigurationManager.AppSettings["StoreId"];
    }
}

web.config :

<appSettings>
    <add key="StoreId" value="123" />
</appSettings>

0 votes

C'est dans votre application principale ? Dans une bibliothèque de classes ? Dans une application web ou un site web ?

0 votes

Bonjour @Nick, pouvez-vous réviser la bonne réponse ? Cela fait 7 ans et j'ai posté une meilleure solution.

0voto

Mehdi Jalal Points 1644

Je suis d'accord avec la réponse ci-dessus et je voudrais ajouter quelques points supplémentaires.

  1. vous devez vous assurer que vous ne mettez pas d'espace avant et après le : voir le code ci-dessous :

    private static string Client_ID = ConfigurationManager.AppSettings["ida:ClientId"];

    si vous mettez un espace entre ida : ClientId, cela ne fonctionnera pas et retournera null.

  2. assurez-vous que les noms de vos valeurs clés sont corrects

  3. vous pouvez essayer WebConfigurationManager

0voto

Oranit Dar Points 41

Cela m'est arrivé à l'instant, mais seulement en l'appelant depuis un autre projet. Apparemment, dans l'autre projet, la référence n'a pas été définie comme une référence de service mais plutôt comme un service connecté. J'ai supprimé la référence et l'ai ajoutée à nouveau.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X