Как получить значения из ConfigSection, определенного как NameValueSectionHandler, при использовании ConfigurationManager.OpenMappedExeConfiguration
Получить значения из файла конфигурации, в котором используется раздел, определенный System.Configuration.NameValueSectionHandler, легко, когда выиспользовать текущий файл конфигурации для приложения.
Пример файла конфигурации.
Пример кода, который легко читает.
NameValueCollection myParamsCollection =
ConfigurationManager.GetSection("MyParams") as NameValueCollection;
Это код, который нет работа.
NameValueCollection collection =
ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None)
.GetSection("MyParams") as NameValueCollection;
Это терпит неудачу со следующей ошибкой при компиляции.
Невозможно преобразовать типSystem.Configuration.ConfigurationSection» кSystem.Collections.Specialized.NameValueCollection» с помощью преобразования ссылок, преобразования в упаковку, преобразования в распаковку, преобразования в оболочку или преобразования нулевого типа.
ConfigurationManager.OpenExeConfiguration (ConfigurationUserLevel.None) возвращает System.Configuration.Configuration, а Configuration.GetSection возвращает ConfigurationSection.
ConfigurationManager.GetSection возвращает объект.
Итак, как мне вернуть мою коллекцию NameValueCollection, когда мне нужно использовать OpenExeConfiguration?