2

私はAzureにかなり慣れておらず、Blobストレージを使用していくつかのバイナリイメージを格納していますが、AzureストレージエンドポイントのURLをプログラムで取得する方法がわからないようです。

<img>シミュレーターを使用して、またはライブAzureインスタンスにデプロイしたときに、ローカルで正しくレンダリングされるいくつかのタグをレンダリングしようとしています。

したがって、たとえば、サイトをローカルで起動すると、次のようにレンダリングされます。

<img src="http://127.0.0.1:10000/devstoreaccount1/uploads/image.jpg" />

Azureにデプロイすると、次のようにレンダリングされます。

<img src="http://example.blob.core.windows.net/uploads/image.jpg" />

明らかに、1つの方法は、ServiceConfiguration.Local.cscfgファイルとServiceConfiguration.Cloud.cscfgファイルに設定として保存することですこの値をプログラムで取得する方法が必要です。

ここに画像の説明を入力してください

4

1 に答える 1

2

接続文字列を構成に保存する必要があり、ローカルとクラウドで異なる値を使用できるという点で正しいです。これは、プログラムで非常に簡単に取得できます。

まず、ロールの起動時に構成設定パブリッシャーを設定していることを確認してください。

CloudStorageAccount.SetConfigurationSettingPublisher((configName, configSetter) => configSetter(RoleEnvironment.GetConfigurationSettingValue(configName)));

次に、ストレージ アカウントを取得して URL をプルします。

var storageAccount = CloudStorageAccount.FromConfigurationSetting("MyStorage");
var urlBase = storageAccount.BlobEndpoint;

この時点で、IMGタグのベースをurlBase.

于 2012-04-04T12:09:49.683 に答える