ConfigurationManager.AppSettings возвращает значение NULL в модульном тестовом проекте

У меня есть проект модульного тестирования C # с настройками приложения вapp.config файл. Я тестирую класс, который существует в другом проекте. Этот класс зависит от обоих,ConfigurationManager.AppSettings а такжеConfigurationManager.ConnectionStrings.

Проект, в котором находится тестируемый класс, не имеет файла app.config. Я бы подумал, что, поскольку класс создается в контексте проекта модульного теста, он будет использовать файл app.config проекта модульного теста. Действительно, похоже, что это действительно так для строки подключения.

Класс извлекает строку подключения без каких-либо проблем. Однако когда класс пытается получить какие-либо настройки приложения, менеджер конфигурации всегда возвращаетnull, Что здесь происходит?

Редактировать 1

Я подумал, может быть, было бы неплохо попробовать загрузить некоторые настройки в тестовом проекте, чтобы посмотреть, что произойдет. Я попытался загрузить параметр в модульном тесте непосредственно перед вызовом кода, который создает экземпляр класса во внешнем проекте. Тот же результат, ничего. Думаю, я могу пока исключить другой проект из уравнения.

Вот выдержка из моего конфигурационного файла:

<configSections>
  <sectionGroup name="applicationSettings"
                type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
    <section name="MyNamespace.Properties.Settings"
             type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"
             requirePermission="false" />
  </sectionGroup>
</configSections>

...

<applicationSettings>
  <MyNamespace.Properties.Settings>
    <setting name="Bing_Key"
             serializeAs="String">
      <value>...</value>
    </setting>
  </MyNamespace.Properties.Settings>
</applicationSettings>

и вот как я пытаюсь загрузить настройки:

string test = System.Configuration.ConfigurationManager.AppSettings["Bing_Key"];

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

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