web-dev-qa-db-fra.com

Comment utiliser la valeur de appSettings à partir du fichier App.Config lors de la création d'un service Windows

J'essaie de créer un serveur Windows. J'ai une logique en C #

        string urlToPing = ConfigurationSettings.AppSettings["UrlToPing"].ToString();
        Stream data = client.OpenRead(urlToPing);

J'ai besoin de lire

Voici mon App.Config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="UrlToPing" value="http://mysite.com"/>
  </appSettings>

</configuration>

Je suis nouveau chez Windows Services, mes questions:

  • Lorsque je publie dans un dossier le Service ou si je crée une version, je ne vois pas le fichier App.Config
    • Avertissement de Visual Studio sur ConfigurationSettings.AppSettings comme obsolète (que dois-je utiliser à la place?)
30
GibboK

À ma deuxième question, j'ai trouvé une solution:

  1. Ajoutez une référence à System.Configuration à votre fichier de code.

    using System.Configuration;

  2. Le paramètre peut maintenant être référencé correctement ...

    ConfigurationManager.AppSettings["UrlToPing"].ToString();

49
GibboK

À votre première question, lorsque vous créez un projet exécutable (service Windows, application console, etc.), il renommera app.config en "YourApplication" .exe.config où "YourApplication" est le nom de votre assemblage de démarrage. Il copiera ensuite le fichier dans votre dossier de sortie.

2
wacdany