ブロブが存在するかどうかを確認しようとしているので、FetchAttributes を実行しています。これはうまく機能しましたが、負荷テストでは、数千回のリクエストで、この方法で 2 件のリクエストが失敗しました。
エラーは、ブロブ参照の BlobType がブロブの BlobType と一致しませんでした。
ブロブが存在します。
このメソッドの SDK 1.7 にエラーがあるかどうか知っていますか?
これが再開したコードです。ありがとうございました。
CloudStorageAccount cloudStorageAccount;
CloudStorageAccount.SetConfigurationSettingPublisher(
(configName, configSettingPublisher) => configSettingPublisher(serviceName));
cloudStorageAccount = CloudStorageAccount.Parse(
string.Format("DefaultEndpointsProtocol=https;AccountName={0};AccountKey={1}", accountName, accountKey));
BlobConnection blobConn =
new BlobConnection(GeneralConstants.GetValue(GeneralConstantsEnum.BlobPersistance), identity);
blobClient = this.Account.CreateCloudBlobClient();
blobContainer = blobClient.GetContainerReference(blobContainerName);
blobContainer.GetBlobReference(blobName);
CloudBlob blob = blobContainer.GetBlobReference(blobName);
blob.FetchAttributes(); //Throws the exception
operation = blob.Metadata["operation"];
productId = blob.Metadata["productId"];
clientId = blob.Metadata["clientId"];
workOrders = blob.DownloadText();