1

SQL Azureに接続するワーカーの役割があり、一度にレコードを取得し、EntityFramework4を使用してレコードを処理します。疑似コード

 while (true)
 {
    ProcessRecord();
 }

 ProcessRecord()
 {
   try{
        ObjectContext oc = new ObjectContext ();
        //process records
        oc.Dispose()
    }
    catch(Exception e)
    {
        //logging code goes here...
     }
 }

ロールは問題なく実行されますが、ときどき(たとえば、9時間に1回)エラーが発生します-「基になるプロバイダーがOpenで失敗しました」。これは、ワーカーロールがSQL Serverに接続できないことを意味しますか?

4

2 に答える 2

2

正確なエラーコードを記録しますか?一般的に、あり得ることはたくさんあります。まず、この記事を読んで、それらの多くを説明することをお勧めします。また、このSOの質問も確認してください。私の答えは、Windows AzureSQLDatabaseについて多くのことを説明しています。

于 2012-07-24T06:27:35.680 に答える
1

これは、ここで説明されているように、ランダムな環境関連のエラーです。これが発生します-SQLAzureは別のマシン上にあり、ネットワーク要求が失敗することがあります。リクエストを再試行する必要があります。それだけです。

于 2012-07-24T07:27:57.083 に答える