2013-08-29 49 views
2

使用.NET客戶端庫get all the contacts通常這樣做是爲了讓所有的谷歌聯繫人:如何使用.NET庫和指數退避

Feed<Contact> f = cr.GetContacts(); 
foreach (Contact e in f.Entries) 
{ 
    // do something with the contact e 
} 

我要修改這個,所以我可以趕上503錯誤,並重新 - 使用指數退避操作請求。我理解如何捕捉錯誤並執行指數退避,但是我正在努力通過語法來保持循環遍歷所有條目,以便重新嘗試。我在想這是這樣的:

Feed<Contact> f = cr.GetContacts(); 
try 
{ 
    foreach (Contact e in f.Entries) 
    { 
     // do something with the contact e 
    } 
} 
catch (GDataRequestException e) 
{ 
    // see if this should be re-tried, and if so repeat position in the foreach loop 
} 

任何結構/語法的幫助將不勝感激。

回答

0

我找到了解決辦法,在我的情況下幫助:

this._contactsRequest.Settings.AutoPaging = true; 

只需設置AutoPaging屬性在ContactsRequest對象爲true的設置,一切都很好,但操作需要很長時間才能完成(在我的例子250個測試聯繫人)。