1

我正在使用 MonoTouch 开发应用程序,并且必须从 3rd 方网络服务获取一些数据。我有一个 WCF 绑定来执行此操作。

我正在调用的特定 Web 服务方法可能会返回数百兆字节范围内的 XML 字符串,这可能需要一段时间才能下载到移动设备。

我正在寻找某种方法来捕获在系统级别从网络读取了多少字节,最终游戏是向用户显示进度指示器。有什么方法可以使用行为来实现这一点吗?

请注意,我没有任何方法可以修改 Web 服务代码以返回 Stream 对象,这是我发现的大多数文章都需要做的。

任何帮助或方向将不胜感激。谢谢

作为最后的手段,我总是可以使用 NSURLConnection 来代替 WCF,因为我知道有 NSURLConnectionDelegate 方法可以提供这一点。我想避免使用 NSURLConnection,以便将来可以轻松地将这段代码放入 Android 项目中。

4

1 回答 1

0

是否有理由使用 WCF 而不是普通的 HttpWebRequest?

WCF 在解析数据方面效率不高,它会在内存中保留多个副本以反序列化各种信息块。

没有可以提供此信息的系统级 API,您从 HttpWebRequest 返回的 Stream 是您将获得的最佳价值。

于 2012-07-29T15:18:01.717 回答