Я работаю с С#, Framework 3.5 (VS 2008).
Я использую ConfigurationManager
для загрузки конфигурации (а не файла app.config по умолчанию) в объект конфигурации.
Используя класс Configuration, я смог получить ConfigurationSection
, но не смог найти способ получить значения этого раздела.
В конфигурации ConfigurationSection
имеет тип System.Configuration.NameValueSectionHandler
.
Для чего стоит, когда я использовал метод GetSection
для ConfigurationManager
(работает только тогда, когда он был в моем файле app.config по умолчанию), я получил тип объекта, который я мог бы передать в коллекцию пар от ключевого значения, и я просто получил значение, как словарь. Я не мог сделать такой откат, когда получил класс ConfigurationSection
из класса Configuration.
EDIT: Пример файла конфигурации:
<configuration>
<configSections>
<section name="MyParams"
type="System.Configuration.NameValueSectionHandler" />
</configSections>
<MyParams>
<add key="FirstParam" value="One"/>
<add key="SecondParam" value="Two"/>
</MyParams>
</configuration>
Пример того, как я мог использовать его, когда он был на app.config(метод GetSection предназначен только для файла app.config по умолчанию):
NameValueCollection myParamsCollection =
(NameValueCollection)ConfigurationManager.GetSection("MyParams");
Console.WriteLine(myParamsCollection["FirstParam"]);
Console.WriteLine(myParamsCollection["SecondParam"]);