3

Azure ストレージアカウントを使用した BLOB のチュートリアルを実行しています。こちら Azure ストレージ チュートリアル

Azure でストレージ アカウントを作成しましたが、稼働していると表示されます。キーとアカウント名を構成ファイルにコピーしました。アプリケーションのエンドポイント アドレスが Azure ストレージ アカウントのエンドポイント アドレスと一致することを確認しました。しかし、コードを実行すると 404 エラーが発生します。Azure アカウントからブラウザーにエンドポイント アドレスをコピー アンド ペーストすると、404 エラーも発生します。

ここにコードがあります。実際にチュートリアルからコピーしたもので、正しいアカウント名とキーを構成文字列に追加しましたが、この投稿ではそれらを削除しました

    // Retrieve storage account from connection string.
        CloudStorageAccount storageAccount = CloudStorageAccount.Parse(
                CloudConfigurationManager.GetSetting("StorageConnectionString"));

        // Create the blob client.
        CloudBlobClient blobClient = storageAccount.CreateCloudBlobClient();

        // Retrieve reference to a previously created container.
        CloudBlobContainer container = blobClient.GetContainerReference("mycontainer");

        // Retrieve reference to a blob named "myblob".
        CloudBlockBlob blockBlob = container.GetBlockBlobReference("myblob");

        // Create or overwrite the "myblob" blob with contents from a local file.
        using (var fileStream = System.IO.File.OpenRead(@"myfile"))
        {
            blockBlob.UploadFromStream(fileStream);
        }

および接続文字列

<appSettings>
    <add key="StorageConnectionString" value="DefaultEndpointsProtocol=https;AccountName=myAccount;AccountKey=mykey" />
</appSettings>

理由はありますか?Azure でさらに何かする必要がありますか?

4

1 に答える 1

5

問題は、コンテナが作成されていないか、削除されていたことです。追加した

container.CreateIfNotExist();

そしてそれはうまくいきました。404 ではなく別のエラーが発生すると予想していましたが、それで修正されました。

于 2013-08-07T20:17:37.143 に答える