2012-06-30 3 views
0

я писать базовый код, это проект WPF ...Получение значений из .config файлов

string a = ConfigurationManager.AppSettings["SetUserDB"]; 
MessageBox.Show(a); 

но переменная a пуст, почему? им с помощью System.Configuration по проекту ...

мой конфигурационный файл здесь:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="SetUserDB" value="RemoteDBHavana" /> 
    </appSettings> 
</configuration> 

теперь уже я могу переименовать значение на конфигурационный файл? thanks :)

+2

Является ли ваш файл конфигурации скопированным в той же папке, что и исполняемый файл, и назван как этот 'YourAppName.exe.config', где' YourAppName.exe', очевидно, является исполняемым приложением WPF? Если ответ на этот вопрос будет * no *, вам придется сделать это, если вы хотите, чтобы это работало. –

+0

У меня есть файл App1.config в папке моего проекта – user1478466

+0

Это неправильное имя. Если ваш исполняемый файл имеет имя «App1.exe», ваш файл конфигурации должен иметь имя «App1.exe.config». –

ответ

1

Если у вас есть исполняемый файл с именем App1.exe, файл конфигурации должен находиться в том же каталоге, что и этот исполняемый файл, и называется App1.exe.config. Это соглашение, которое .NET использует для загрузки файлов конфигурации.

+0

спасибо, работает !! – user1478466

+0

Итак, как i cam переименовать значение в моем файле конфигурации? – user1478466

+0

Конфигурационный файл .NET должен использовать только свойства readonly, которые загружаются после запуска приложения. Если вам нужно изменить свойства, вы должны рассмотреть их внешнюю реализацию в отдельный файл или базу данных. –

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