Я использую ConfigurationManager.AppSettings [myKey] для чтения значения из файла app.config в моем приложении Windows, но возвращаемое значение всегда равно null, хотя ключ существует и имеет значение. Deas знает любой почему?
Спасибо
Я использую ConfigurationManager.AppSettings [myKey] для чтения значения из файла app.config в моем приложении Windows, но возвращаемое значение всегда равно null, хотя ключ существует и имеет значение. Deas знает любой почему?
Спасибо
Одна, может быть, проще, альтернатива - использовать файл настроек. Это инкапсулирует создание и обслуживание значений App.config в графическом интерфейсе дизайнера и генерирует код для доступа к значениям.
Чтобы добавить файл настроек, щелкните правой кнопкой мыши свой проект в VS и нажмите "Добавить → Новый элемент", выберите "Файл настроек" и укажите его значимое имя, например. MainSettings.settings
. Затем вы можете добавить элемент, например. Foo
, укажите, является ли это приложение или пользовательским, укажите его тип и присвойте ему значение. В вашем коде вы можете получить значение простым письмом MainSettings.Default.Foo
.
После компиляции вы можете изменить значение, отредактировав файл конфигурации. Настройка будет выглядеть следующим образом: -
<applicationSettings>
<YourNamespace.MainSettings>
<setting name="Foo" serializeAs="String">
<value>Bar</value>
</setting>
</YourNamespace.MainSettings>
</applicationSettings>
Трудно сказать, что вы здесь предоставили:
У меня была та же проблема, но когда я добавил пустую строку (+ "") в конец, она берет строку в настройках app
например
string s = ConfigurationManager.AppSettings["myKey"] + "";
У меня есть два проекта в моем решении. Сначала я добавляю файл app.config в проект библиотеки классов, который все экземпляры вызывают из консольного приложения. Я добавил эти записи в файл конфигурации в проекте класса lib
<appSettings>
<add key="userName" value="user2" />
<add key="emilsLimit" value="50" />
</appSettings>
он выбрасывал исключительное исключение, когда я получаю их в классе в проекте библиотеки классов, но когда я удаляю app.config из проекта библиотеки классов и добавляется в проект консоли, он работает. Пользователи
Примечание. Ссылка на проект класса lib добавляется в консоль