我们试图知道一个 blob 是否存在,所以我们正在做一个 FetchAttributes。它运行良好,但在负载测试中,在数千个请求中,有两个请求在此方法中失败。
错误是Blob 引用的 BlobType 与 Blob 的 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();