2010-10-14 5 views
6

Wie Werte von App.Config abgerufen werden.wpf - Werte aus der App Config-Datei abrufen

Code:

<configuration> 
    <appSettings> 
    <add key="ShowRoomCode" value="1000"/> 
    <add key="FolderPath" value="D:\\Images\\Book\\"/> 
    </appSettings> 
</configuration> 

string imageFolderPath = ConfigurationManager.AppSettings["FolderPath"]; 

Aber es Nullwert zurückgibt. Die Konfigurationsdatei befindet sich im selben Projekt.

Antwort

17

Wenn Sie die Eigenschaften Abschnitt von Visual Studio und doppelklicken Sie auf die Einstellungen Abschnitt erweitern, können Sie benutzerdefinierte Einstellungen hinzufügen, die in der Konfigurationsdatei wie so am Ende:

<configuration> 
<configSections> 
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > 
     <section name="WpfApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" /> 
    </sectionGroup> 
</configSections> 
<userSettings> 
    <WpfApplication1.Properties.Settings> 
     <setting name="FilePath" serializeAs="String"> 
      <value>Thing</value> 
     </setting> 
    </WpfApplication1.Properties.Settings> 
</userSettings> 
</configuration> 

dem Du tun dies dann in Ihrem Code:

string thing = Properties.Settings.Default.FilePath; 

das ist schön, weil es Ihnen Sicherheit zu

+2

Lösung Explorer gibt Typ -> MyProject -> Pro Ordner -> Settings.Settings "(VS2012) – teynon

+0

Oben funktioniert nicht für mich, alternativ habe ich das verwendet: YourAppName.Properties.Settings.Default.NameOfYourSetting.ToString(); –

1

Der Code, den Sie geschrieben haben, sollte funktionieren - stellen Sie sicher, dass Sie 'BuildAction' der Konfigurationsdatei nicht geändert haben.