Как получить значения из 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?

Ответы на вопрос(1)

Ваш ответ на вопрос