适用于 .NET 的 Azure 存储 SDK:如何在新的 Blob 存储库上设置 RetryPolicy?

Azure Storage SDK for .NET: How to set RetryPolicy on the new Blob storage library?

在 Microsoft.WindowsAzure.Storage(旧版 Azure SDK for .NET)中,我们可以将 BlobClient 的重试策略设置为 IRetryPolicy,如下所示:

var blobClient = this.storageAccount.CreateCloudBlobClient();    
blobClient.DefaultRequestOptions.RetryPolicy = TransientFactory.GetStorageRetryPolicy().AsAzureStorageClientRetryPolicy();

但是,在新版本的SDK中,直接创建BlobClients,无需通过CloudStorageAccount,如何实现呢?

我使用 docs 所能达到的最大程度是手动设置最大重试次数:

 var blobClientOptions = new BlobClientOptions();
 blobClientOptions.Retry.MaxRetries = 4;
 var blobServiceClient = new BlobServiceClient("connection_string", options: blobClientOptions);
        

是否可以在 BlobClient 或 BlobServiceClient 上设置 RetryPolicy,而不是手动设置重试参数?

您post的用法正是我们的用法。我们可以在两个位置设置重试策略。

一个是你如何post:在创建 blob 客户端时设置重试策略。

一个在创建时设置重试策略BlobServiceClient:

var blobServiceClient = new BlobServiceClient
(connectionString:storageAccountConnectionString, options: blobClientOptions);

关注.