2010-10-14 5 views
6

Как получить значения из App.Config.wpf - Получить значения из файла конфигурации приложения

Код:

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

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

Но она возвращает нулевое значение. Файл конфигурации находится в одном проекте.

ответ

17

Если вы разворачивания Свойства раздел Visual Studio и дважды щелкните раздел настроек, вы будете иметь возможность добавлять пользовательские настройки, которые в конечном итоге как и в конфигурационном файле:

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

Что вы можете то сделать это в коде:

string thing = Properties.Settings.Default.FilePath; 

что приятно, потому что это дает вам безопасный тип тоже

+2

Solution Explorer, -> MyProject -> Pro perties Folder -> Settings.Settings "(VS2012) – teynon

+0

Выше не работает для меня, иначе я использовал это: YourAppName.Properties.Settings.Default.NameOfYourSetting.ToString(); –

1

Код, который вы написали, должен работать - убедитесь, что вы не изменили «BuildAction» конфигурационного файла.

Смежные вопросы