У меня есть библиотека, содержащая несколько вспомогательных классов Azure. Внутри этих вспомогательных классов я получаю такие параметры, как имя и ключ учетной записи Azure. При работе в Azure эти параметры берутся из облачного файла конфигурации (cscfg ). Это все работает нормально.
Для модульного тестирования этих классов за пределами Azure (, а именно в среде RoleEnvironment ), я создал настройки с теми же именами переменных в рамках проекта модульного тестирования. На самом деле они сохраняются в файле app.config и редактируются в разделе настроек, который находится в разделе свойств моего тестового проекта. Вместо того чтобы создавать собственный метод абстрагирования параметров конфигурации облака от параметров web.config/app.config, я решил использовать класс CloudConfigurationManager. Однако, когда я запускаю свои модульные тесты, ни одна из моих настроек не подбирается, поэтому я просто получаю нули. Однако если я изменю свой файл app.config, чтобы использовать настройки в формате «appSettings» ниже, я получу допустимые значения. Недостатком этого является то, что я больше не могу редактировать свои настройки с помощью страницы редактора настроек в Visual Studio.
Итак, мой вопрос: я делаю что-то не так или это ограничение диспетчера облачных конфигураций, из-за которого он может выбирать только вручную добавленные настройки приложения, но не приложения, добавленные с помощью редактора?
<appSettings>
<add key="Foo" value="MySettingValue"/>
</appSettings>
выше работает, а ниже нет:
<applicationSettings>
<ComponentsTest.Properties.Settings>
<setting name="Foo" serializeAs="String">
<value>MySettingValue</value>
</setting>
</ComponentsTest.Properties.Settings>
</applicationSettings>