В настоящее время я использую RoleEnvironment.GetConfigurationSettingValue(propertyName)
для получения значения параметра, определенного в моем файле конфигурации WebRole (csdef + cscfg). Хорошо, звучит правильно.
Это хорошо работает, если параметр существует, но сбой с исключением, если параметр не определен в csdef и cscfg.
Я переношу существующее приложение в Azure, которое имеет множество параметров конфигурации в файле web.config. В моем коде, чтобы прочитать значение параметра, я хотел бы проверить: если он существует в конфигурации webRole (csdef + cscfg), я читаю его отсюда, в противном случае я читаю его с помощью ConfigurationManager из web.config. Это предотвратит перенос всех настроек из моего web.config и позволит настроить их, когда приложение уже развернуто.
Есть ли способ сделать это ?
Я не хочу инкапсулировать GetConfigurationSettingValue
в try/catch (и читать из web.config, если я ввожу catch), потому что это действительно уродливый способ (и в основном это неэффективно с точки зрения производительности!).
Спасибо !