我正在使用MonoTouch开发应用程序,并且必须从第三方Web服务获取一些数据。我有一个WCF绑定来做这个。
我调用的特定Web服务方法可能会返回数百兆字节的XML字符串,这可能需要一段时间才能下载到移动设备。
我正在寻找一些方法来捕获在系统级别从网络读取了多少字节,最终游戏是向用户显示进度指示器。有什么方法可以使用行为来实现这一点吗?
注意,我没有办法修改Web服务代码以返回Stream对象,这是我发现的大部分文章都需要做的。
非常感谢任何帮助或指示。感谢
作为最后的手段,我总是可以依靠使用NSURLConnection来代替WCF,因为我知道有一些NSURLConnectionDelegate方法可以提供这个。我想避免使用NSURLConnection,以便将来能够轻松地将此代码放入Android项目中。
答案 0 :(得分:0)
是否有理由使用WCF而不是普通的HttpWebRequest?
WCF在解析数据方面效率不高,它会在内存中保留多个副本以反序列化各种信息块。
没有系统级API可以提供此信息,您从HttpWebRequest获取的Stream是您将获得的最佳价值。