2009-04-30 10 views
51

J'ai créé un fichier App.config dans mon application WPF:Comment utiliser un fichier App.config dans les applications WPF?

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appsettings> 
    <add key="xmlDataDirectory" value="c:\testdata"/> 
    </appsettings> 
</configuration> 

J'essaie de lire la valeur avec ceci:

string xmlDataDirectory = ConfigurationSettings.AppSettings.Get("xmlDataDirectory"); 

Mais il dit que c'est obsolète et que je devrais utiliser ConfigurationManager que je ne trouve pas, même en cherchant dans la vue de classe.

Est-ce que quelqu'un sait comment utiliser les fichiers de configuration comme ça dans WPF?

Répondre

60

Vous devez faire référence à l'ensemble de System.Configuration qui est dans GAC

L'utilisation de ConfigurationManager n'est pas WPF spécifique: il est le moyen privilégié d'accéder aux informations de configuration pour tout type d'application

S'il vous plaît voir Msdn Pour plus d'informations

Espérons que ça aide!

Cédric

+6

oui qu'il est, je devais changer nommez appsettings à appSettings, ajoutez la référence System.Configuration à mon projet, puis utilisez ceci: string xmlDataDirectory = ConfigurationManager.AppSettings.Get ("xmlDataDirectory"); –

14

En vous App.Config changer votre appsetting à

<applicationSettings> 
    <WpfApplication1.Properties.Settings> 
     <setting name="appsetting" serializeAs="String"> 
      <value>c:\testdata.xml</value> 
     </setting> 
    </WpfApplication1.Properties.Settings> 
</applicationSettings> 

Puis dans le code-behind

string xmlDataDirectory = WpfApplication1.Properties.Settings.Default.appsetting.ToString() 

HTH

1

Cela fonctionne également

WpfApplication1.Properties.Settings.Default["appsetting"].ToString() 
4

Vous devez ajouter la référence à System.configuration dans votre solution. Incluez également "using System.Configuration;" Une fois que vous faites cela, vous aurez accès à tous les paramètres de configuration.

5

Vous devez faire référence à System.Configuration via l'explorateur (ne pas seulement ajouter using System.Configuration). Alors vous pouvez écrire:

string xmlDataDirectory = 
    System.Configuration.ConfigurationManager.AppSettings.Get("xmlDataDirectory"); 

Testé avec VS2010 (merci à www.developpez.net). J'espère que cela aide.

+0

Oui, cliquez avec le bouton droit sur Références et ajoutez System.Configuration à partir du gestionnaire de références. Merci! –

2

Vous pouvez modifier le schéma de fichier de configuration en DotNetConfig.xsd via les propriétés du fichier app.config. Pour trouver la destination du schéma nécessaire, vous pouvez le rechercher par son nom ou créer une application winforms, l'ajouter au fichier de configuration du projet et dans ses propriétés, vous trouverez le chemin d'accès complet au fichier.

10

Dans mon cas, j'ai suivi les étapes ci-dessous

App.config

<configuration> 
    <startup> 
     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /> 
    </startup> 

<appSettings> 
    <add key="POCPublishSubscribeQueueName" value="FormatName:Direct=OS:localhost\Private$\POCPublishSubscribe"/> 
</appSettings> 

</configuration> 

Ajouté System.Configuartion à ma solution

ajoutée à l'aide du système.instruction de configuration dans le fichier en haut

ensuite utilisé ci-dessous la déclaration

string queuePath = ConfigurationManager.AppSettings["POCPublishSubscribeQueueName"].ToString(); 
-1

J'ai une bibliothèque de classes WPF projet, et j'utiliser:

'Read Settings 
Dim value as string = My.Settings.my_key 
value = "new value" 

'Write Settings 
My.Settings.my_key = value 
My.Settings.Save() 
Questions connexes