Каков рекомендуемый способ обработки изменений конфигурации среды? - PullRequest
0 голосов
/ 01 сентября 2010

Я предполагаю, что он создает второй файл .csfg, но конфигурация встроена в тип проекта Azure, поэтому я не совсем уверен.

Например, если я хочу, чтобы постановка и прямая трансляция указывали на разные базы данных sql-azure, как мне это сделать?

Спасибо

1 Ответ

3 голосов
/ 01 сентября 2010

Предполагая, что вы хотите вносить изменения на лету, почти как изменение web.config и циклический пул приложений в IIS, использование нескольких файлов конфигурации службы (.cscfg) - лучший подход.

Azure позволяет вам (используя как портал, так и API времени выполнения службы) изменять конфигурацию службы на лету.Вы можете спроектировать свое приложение, чтобы реагировать на это, и иметь полный контроль над поведением на основе примененных вами изменений.

Чтобы реализовать это, вам нужно сделать две вещи:

(1) Перенос параметров, которые вы хотите изменить во время выполнения, с традиционного приложения или web.config на .cscfg. (объявлено в определении службы (.csdef))

(2) Перехватить обработчик (и) событий для изменений среды

using Microsoft.WindowsAzure.ServiceRuntime;

// fired when a change is detected, prior to it being applied
    RoleEnvironment.Changing += RoleChanging; 
// fired when a change is completed, after its applied
    RoleEnvironment.Changed += RoleChanged; 

Оттуда вы можете решить, хотите ли вы просто создать новые экземпляры определенных объектов, используя новые переменные, или взять большерешительные действия, такие как переработка роли.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...