1

У меня есть веб-сервис, который загружает данные в хранилище blob. У меня есть 2 развертывания этого веб-сервиса, в Юго-Восточной Азии и один в США. Каждое развертывание имеет другую связанную с ним учетную запись (при создании облачного сервиса вы можете связать с ней учетную запись), например StorageSEA и StorageUS.Как связать связанную учетную запись с webrole?

На данный момент я прочитал строку подключения учетной записи хранилища из конфигурации, а это означает, что при развертывании на юго-восточную азию мне нужно перейти и обновить строку подключения, чтобы указать на StorageSEA и изменить ее на StorageUS при публикации в США , Это не похоже на подход, который я смогу выдержать в будущем, поскольку я планирую продолжить развертывание.

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

ответ

2

Есть два решения я мог думать:

  1. Используйте преобразование конфигурации, чтобы создать 2 отдельные конфигурации развертывания файлов - один для Юго-Восточной Азии и другой для США. В каждом конфигурационном файле будет храниться учетная запись для этого центра обработки данных.

  2. Программно идентифицировать местоположение развертывания - В этом случае вы должны указать строку подключения учетной записи хранилища в своем файле конфигурации. Когда роль запустится, вы найдете местоположение центра обработки данных облачного сервиса и на основе этого вы получите одно из значений. Чтобы это сработало, вам необходимо будет выполнить операцию API управления услугами Get Hosted Service Properties (http://msdn.microsoft.com/en-us/library/windowsazure/ee460806.aspx).