0

我正在編寫一個MVC5應用程序,並且正在上傳BlockBlobsAzure作廢Azure blob存儲的RetryPolicy代碼

我有一些現在已經過時的微軟代碼,我希望將這個過時的代碼轉換成可以在我的應用程序中工作的代碼。

這裏是舊代碼:

BlockBlob.PutBlock(blockId, chunkStream, null, null, new BlobRequestOptions() { RetryPolicy = RetryPolicies.Retry(3, TimeSpan.FromSeconds(10)) }); 

我有一些代碼不工作,但是這個代碼不使用RetryPolicy

這裏是沒有RetryPolicy代碼:

BlockBlob.PutBlock(blockId, chunkStream, null, null, null, null); 

我可以請有一定的幫助,以正確地構建BlobRequestOptions對象使用RetryPolicy

這是我到目前爲止有:

BlobRequestOptions blobRequestOptions = new BlobRequestOptions(); 
blobRequestOptions.RetryPolicy.CreateInstance(); 
TimeSpan timeSpan = new TimeSpan(); 
TimeSpan.FromSeconds(10); 
blobRequestOptions.RetryPolicy.ShouldRetry(3, 0, new Exception(), out timeSpan, new OperationContext()); 

我不知道以下內容:

  1. 使用什麼狀態代碼。
  2. 什麼用於LastException。
  3. 時間跨度的值。
  4. 什麼用於OperationContext。

在此先感謝。

回答

1

我有類似的問題。 Microsoft.WindowsAzure.StorageClient已棄用,您現在需要使用Microsoft.WindowsAzure.Storage或更具體的Microsoft.WindowsAzure.Storage.RetryPolicies。

對於重試,這應該工作

new BlobRequestOptions() { RetryPolicy = new LinearRetry(TimeSpan.FromSeconds(10), 3) }