如何在使用PCL版本的DataServiceContext时设置超时?

时间:2015-04-21 14:39:24

标签: c# xamarin odata portable-class-library

我正在使用BingSearchContainer在网络上搜索图片。我想设置一个Timeout,因为我们正在从移动设备上使用它,网络很可能会消失。

BingSearchContainer是一个瘦类,它从其基类 System.Data.Services.Client.DataServiceContext 中派生出大部分功能。

此类的标准net40版本具有Timeout属性,该属性可以完成此任务。然而,我们使用 portable-net45 + wp8 + win8 + wpa 版本,但没有此属性。这可以从源here

中看出

在第470行,它说:

#if !ASTORIA_LIGHT  && !PORTABLELIB // Timeout not available

有人知道设置超时的不同技巧吗?

1 个答案:

答案 0 :(得分:0)

只要您使用此客户端,我认为没有其他方法可以设置HTTP请求超时。它封装了HTTP通信,访问较低级别详细信息的唯一方法是通过其属性。

由于PCL版本的HttpClient(以及其他OData PCL库)拥有PCL版本,因此在PCL版本中未启用请求超时这一点很奇怪。