2016-04-22 14 views
1

すべてのテーブル操作にカスタムリトライポリシーを適用する必要があります。これは私が使用しているものです:Windows Azure.Storage SDKバージョン7.0.0.0のAzureテーブルストレージでのRetyPolicyのサポート

_account = CloudStorageAccount.Parse(PhoenixConfiguration.AzureBlobStorageConnection); 
var _tableClient = this._account.CreateCloudTableClient(); 
IRetryPolicy linearRetryPolicy = new LinearRetry(TimeSpan.FromSeconds(5), 10); 
_tableClient.RetryPolicy = linearRetryPolicy; 

私はWindowsAzure.Storage SDK(バージョン6)を使用した、WindowsAzire.Storage SDKのバージョン7を使用するために私のプロジェクトをアップグレードした後に、このコードが破壊されます。新しいSDKでカスタムリトライポリシーを実装する正しい方法は何ですか?私が参照できる資料がありますか?

+0

エラーは何ですか。 –

+0

コンパイルエラー。 RetryPolicyプロパティは、TableClientクラスではサポートされていないようです。 –

答えて

2

CloudTableClientRetryPolicyメンバーは、バージョン6.0で廃止されましたし、今7.0で削除されているので、あなたのコードがコンパイルに失敗している理由がある[驚くべきことである何、それは推奨されているが、それは、CloudBlobClientにまだそこにあるということです]。

Retry Polciesを使用するには、を使用し、そこに再試行ポリシーを指定する必要があります。たとえば、これはテーブルの作成時に使用できます。

 var storageAccount = new CloudStorageAccount(new StorageCredentials(accountName, accountKey), true); 
     IRetryPolicy linearRetry = new LinearRetry(TimeSpan.FromSeconds(5), 10); 
     var tableClient = storageAccount.CreateCloudTableClient(); 
     var table = tableClient.GetTableReference("MyTable"); 
     var tableRquestOptions = new TableRequestOptions() 
     { 
      RetryPolicy = linearRetry 
     }; 
     table.CreateIfNotExists(tableRquestOptions); 
+0

あなたの答えをありがとう。 RetryPolicyにはまだBlobClientがありますが、実行時に奇妙なエラーが発生します。私のローカルエミュレータは、操作が許可されていないというエラーを投げています。 –

+0

うーん...私はそれを自分で試していないので、私は知らないだろう。しかし、クライアント・オブジェクトでの再試行間隔の指定から離れることを推奨し、いつでも取り除くことができるように操作レベルで指定してください。 –

関連する問題