我使用Xamarin iOS和silverlight 3 slsvcutil生成WCF服务,以便在移动应用中使用。然后,我使用Task.Factory.FromAsync创建基于任务的实现,以便我可以对服务调用使用async await。在进行长时间数据传输的调用时,即使WCF绑定设置为使用10分钟,但是很长但是安全,我在60秒时会收到网络超时异常。创建任务的代码是:
public Task<byte[]> SyncExAsyncT(int accountId, string accountUsername, byte[] syncData, System.DateTime lastSyncDateUtc, int appVersion, string deviceName, string misc, int modelVersion, string deviceToken)
{
return Task<byte[]>.Factory.FromAsync((callback, asyncState) =>
base.Channel.BeginSyncEx(accountId, accountUsername, syncData, lastSyncDateUtc, appVersion, deviceName, misc, modelVersion, deviceToken, callback, asyncState),
base.Channel.EndSyncEx, null);
}
我使用byte[] responseStream = await client.SyncExAsyncT
如何控制此实现的超时,以便我可以在60秒内避免网络超时?
答案 0 :(得分:1)
另见这些错误:
https://bugzilla.xamarin.com/show_bug.cgi?id=25251
https://bugzilla.xamarin.com/show_bug.cgi?id=19697
https://bugzilla.xamarin.com/show_bug.cgi?id=18029
这个问题自几个月以来就没有解决