文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>异步调用ASP.NET的Web服务

异步调用ASP.NET的Web服务

时间:2010-09-14  来源:wangbin0307

异步调用Web Service就是避免客户端在调用耗时间的服务方法的时候出现假死状态。那么怎么异步调用呢?

微软的 System.ComponentModel.BackgroundWorker 类可以解决此类问题

(1)注册bw.DoWork += new DoWorkEventHandler(bw_DoWork); 在 private void bw_DoWork(object sender, DoWorkEventArgs e)方法中调用Web服务;

(2)  注册bw.RunWorkerCompleted +=new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);在private void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)方法中针对调用后的结果做调用结束后的操作。

(3)bw.RunWorkerAsync();语句是开始异步调用。

(1)和(2)中的调用结果通过e.Result传递。在bw_RunWorkerCompleted中将调用服务返回的结果e.Result进行AS映射回所需的类型。例如:ServiceReference1.MClass m = new ServiceReference1.MClass();
  m = e.Result as ServiceReference1.MClass;

还有一种方法是使用条件Web引用时候生成的客户端代理类,注意是添加Web引用,不是添加服务引用,在VS2008后续版本中添加Web引用可以点击添加服务引用的选项页面的“高级”按钮。如下图:

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载