2010-10-14 16 views
6

Jak uzyskać wartości z App.Config.wpf - Pobierz wartości z pliku konfiguracyjnego aplikacji

Kod:

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

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

ale zwraca wartość null. Plik konfiguracyjny znajduje się w tym samym projekcie.

Odpowiedz

17

Jeśli poszerzyć Właściwości sekcji Visual Studio i dwukrotnie kliknij sekcję ustawień, będzie można dodać niestandardowe ustawienia, które kończą się podobnie jak w pliku konfiguracyjnym:

<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> 

których można następnie zrobić to w kodzie:

string thing = Properties.Settings.Default.FilePath; 

Co jest dobre, bo to daje Typ bezpieczeństwa zbyt

+2

Solution Explorer -> myproject -> Pro foldery -> Ustawienia Ustawienia "(VS2012) – teynon

+0

Powyższe nie działa dla mnie, alternatywnie użyłem tego: YourAppName.Properties.Settings.Default.NameOfYourSetting.ToString(); –

1

Kod, który napisałeś, powinien działać - upewnij się, że nie zmieniłeś "BuildAction" pliku konfiguracyjnego.

Powiązane problemy