关于webservice的异步调用简单实例

2016-01-29 12:48 18 1 收藏

关于webservice的异步调用简单实例,关于webservice的异步调用简单实例

【 tulaoshi.com - ASP.NET 】


关于webservice的异步调用简单实例无论在任何情况下,被调用方的代码无论是被异步调用还是同步调用的情况下,被调用方的代码都是一样的,
下面,我们就以异步调用一个webservice 为例作说明。这是一个webservice
_ Public Function delCurTable(ByVal tbName As String) As Boolean Try Return True Catch ex As Exception Return False End Try End Function
关于这个webservice的同步调用方法,我就不做说明了异步调用: Private a As vbwebservice.DataManage'定义一个webservice变量 Dim ar As IAsyncResultpublic sub Callback1(byval ar as IAsyncResult)''这里可以不写任何代码'这里的代码在调用方运行结束后,开始运行end sub
#region "异步调用"private sub btnStart_Click()dim cb as asyncallback=new asyncallback(address(me.callback1))ar=a.begindelcurtable("zdf",cb,a)end sub
private sub btnEnd_Click()if ar is nothing thenexit subend ifif ar.IsCompleted Thendim m as boolean=a.enddelcurtable(ar)messagebox.show(m.tostring)end ifend sub#end region注意:“返回异步调用的结果一次只能调用一次,如果想再执行一遍,就必须重新执行一遍begin的方法”以上是vb.net的用法,下面是c#的用法CWebService.DataManage a; System.IAsyncResult ar; private void Form1_Load(object sender, System.EventArgs e) { a=new CWebService.DataManage(); }

public void CallBack1(System.IAsyncResult ar) { }
private void btnStart_Click(object sender, System.EventArgs e) { System.AsyncCallback cb=new AsyncCallback(this.CallBack1); ar=a.BegindelCurTable("zhang",cb,a); }
private void btnEnd_Click(object sender, System.EventArgs e) { if(ar==null) { MessageBox.Show("null"); return ; } if(ar.IsCompleted ) { bool m=a.EnddelCurTable(ar); MessageBox.Show(m.ToString()); } else { MessageBox.Show("为完成"); } }

来源:http://www.tulaoshi.com/n/20160129/1487610.html

延伸阅读
标签: Web开发
首先,我们必须了解什么是webservice.就概念上来说,可能比较复杂,不过我们可以有个宏观的了解:webservice就是个对外的接口,里面有函数可供外部客户调用(注意:里面同样有客户不可调用的函数).假若我们是服务端,我们写好了个webservice,然后把它给了客户(同时我们给了他们调用规则),客户就可以在从服务端获取信息时处于一个相对透明的状态.即...
今天我想实现利用javascript调用WebService我首先就想到了ASP.Net Ajax 因为微软的东西用着方便,我从网上看了看,这东西好多人都写了,我就从官方找了个Demo下了看看源代码,感觉没什么特殊的,于是动手开始写.先添加一个webservice.asmx然后在default.aspx中加入ScriptManager 并设置serviecs属性 <asp:ScriptManager runa...
标签: Web开发
     1.新建一个vs2003的web工程,取名为XMLTest      2.将工程目录下的WebForm1.aspx中内容全部删除,只留下顶部的一条语句:      %@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="XMLTest.WebForm1" % 3.修改...
本示例和参考文章的差别在于: 1)deploy.wsdd定义的更详细(对于server端定义了接口:ICalculate): 代码如下: deployment xmlns="http://xml.apache.org/axis/wsdd/"     xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"     service name="Calculate" provider="java:RPC" style="rpc" u...
一个远程对象至少要包括4个class文件:远程对象;远程对象的接口;实现远程接口的对象的stub;对象的skeleton这4个class文件。 在EJB中则至少要包括10个class: Bean类,特定App Server的Bean实现类,Bean的remote接口,特定App Server的remote接口实现类,特定App Server的remote接口的实现类的stub类和skeleton类。 ...

经验教程

464

收藏

26
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部