81 Stimmen

Wie verwendet man eine App.config-Datei in WPF-Anwendungen?

Ich habe eine App.config-Datei in meiner WPF-Anwendung erstellt:

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

Dann versuche ich, den Wert damit herauszulesen:

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

Aber es sagt, dass dies veraltet ist und dass ich ConfigurationManager verwenden sollte, die ich nicht finden kann, auch bei der Suche in der Klassenansicht.

Weiß jemand, wie man Konfigurationsdateien wie diese in WPF verwenden?

83voto

Cédric Rup Punkte 14608

Sie müssen auf die System.Configuration Baugruppe, die sich im GAC befindet.

Verwendung von ConfigurationManager ist nicht WPF-spezifisch: Es ist der bevorzugte Weg, um auf Konfigurationsinformationen für jede Art von Anwendung zuzugreifen.

Siehe bitte Microsoft Docs - ConfigurationManager Klasse für weitere Informationen.

35voto

Ziggler Punkte 2963

In meinem Fall habe ich die folgenden Schritte befolgt.

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>

Hinzugefügt System.Configuartion für mein Projekt.

Hinzugefügt using System.Configuration Anweisung in der Datei am Anfang.

Dann verwendete er diese Aussage:

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

18voto

Anand Shah Punkte 13989

In Ihrem app.config ändern Sie Ihre Anwendungseinstellungen in:

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

Dann, im Code-Behind:

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

7voto

user1210085 Punkte 61

Sie müssen Bezug nehmen auf System.Configuration über den Explorer (nicht nur anhängen using System.Configuration ). Dann können Sie schreiben:

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

Getestet mit VS2010 (Dank an www.developpez.net). Hoffentlich hilft das.

6voto

Larry Punkte 103

Sie müssen den Verweis auf System.configuration in Ihrer Lösung. Außerdem sollten Sie using System.Configuration; . Sobald Sie dies getan haben, haben Sie Zugriff auf alle Konfigurationseinstellungen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X