2

使用 .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
}

任何有关结构/语法的帮助将不胜感激。

4

1 回答 1

0

我找到了一个对我有帮助的解决方案:

this._contactsRequest.Settings.AutoPaging = true;

只需将 ContactsRequest 对象设置中的 AutoPaging 属性设置为 true 即可,但操作需要很长时间才能完成(在我的情况下为 250 个测试联系人)。

于 2015-01-06T00:48:55.793 回答