1

次のコードは、「CreateIfNotExist」メソッド呼び出しでエラーをスローします。Azure Blobストレージに接続して、「イメージ」という新しいコンテナーを作成しようとしています。

var storageAccount = new CloudStorageAccount(
    new StorageCredentialsAccountAndKey("my_account_name", "my shared key"),
    "https://blob.core.windows.net/",
    "https://queue.core.windows.net/",
    "https://table.core.windows.net/"
);
var blobClient = storageAccount.CreateCloudBlobClient();
var blobContainer = blobClient.GetContainerReference("images");
blobContainer.CreateIfNotExist();

エラーは次のとおりです。

[StorageClientException: The requested URI does not represent any resource on the server.]

「画像」コンテナは存在しませんが、エラーがスローされるのではなく、作成されることを期待していました。私は何が間違っているのですか?

HTTPSの代わりにHTTPを試しましたが、結果は同じエラーになります。

4

2 に答える 2

3

別の構文を使用する必要があることがわかりました

var storageAccount = new CloudStorageAccount(
   new StorageCredentialsAccountAndKey("my_account_name", "my shared key"));
var blobClient = storageAccount.CreateCloudBlobClient(); 
var blobContainer = blobClient.GetContainerReference("images"); 
blobContainer.CreateIfNotExists(); 

エンドポイントが省略されていることに注意してください。明らかに、CloudBlobClientは適切なURIを自動的に把握できます。

于 2010-05-28T02:44:51.250 に答える
0

アカウント名と共有キーが正しいことを確認しますか?Fiddlerをインストールして、HTTPトラフィックを調べ、疑わしいものがないことを確認してみてください。

于 2010-05-27T23:19:54.577 に答える