专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Silverlight

WCF 异步调用,该怎么处理

发布时间:2011-06-27 20:16:04 文章来源:www.iduyao.cn 采编人员:星星草
WCF 异步调用
问个问题吧,假设我循环创造500个某类型的对象,然后每创造一个 就异步调用服务,然后得到的值 赋值给这个对象的属性?

这个问题咋解决呢?

现在想了2点。。,
1.创造对象时赋值,这样就必须再创造下一个对象之前得到返回的结果,然后赋值?这种方法怎样解决。。
2.把所有的对象创造完,在循环调用服务,在赋值?
这样哪种方法更好一些呢?

------解决方案--------------------
楼主的需求很奇特,感觉像是在实现“链”的数据结构,能否把你的 class 代码发出来,再把需求举例说清楚些。

针对你说的第1点,虽然从字面上不是很理解你的做法和要求,凭经验,你可以采用“变并行异步为串行异步”的方式去实现,即当第一个请求返回后,在其 XXXXCompleted() 方法调用第二个异步请求,第二个请求返回后,在其 XXXXCompleted() 方法调用第三个异步请求,依次类推。

感觉你如果是在创建“链”的数据结构的话,应是一次性传递到服务端处理性能上要好一些,当然在传送的过程上需要进行一些设置或压缩。 还是得看到你的代码才能下结论。
------解决方案--------------------
探讨
针对你说的第1点,虽然从字面上不是很理解你的做法和要求,凭经验,你可以采用“变并行异步为串行异步”的方式去实现,即当第一个请求返回后,在其 XXXXCompleted() 方法调用第二个异步请求,第二个请求返回后,在其 XXXXCompleted() 方法调用第三个异步请求,依次类推。

感觉你如果是在创建“链”的数据结构的话,应是一次性传递到服务端处理性能上要好一些,当然在传送的过程上需要进行一些设置或压缩。 还是得看到你的代码才能下结论。

------解决方案--------------------
你是需要控件中的某个属性?可以尝试分离属性声明和服务调用或者,如果服务器处理能力强,交给服务器处理该功能,会更直接,比每次开一个服务要节省很多资源。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: