.net 2.0 webservice 异步调用在winform中的使用例子。
2006-11-24 21:19
701 查看
webservice在vs2003和asp.net中的异步调用都会用到begin[函数] ,但到了2.0时代的winform中如果web引用后,在其web生成的reference.cs中这个begin[函数] 和 end[函数] 就不再出现。取代的是一个 *completed事件。
下面是一个简单的例子。winform事例。
服务器端
[WebMethod]
public string HelloWorld2(string strName) {
System.Threading.Thread.Sleep(5000);
return "Hello World 2 " + strName;
}
没什么特别,只是用了个sleep增加返回值的时间。
客户端
两个textbox 一个输入字符串,经服务器加工后返回在第二个textbox中显示。
public Form1()
{
InitializeComponent();
ser=new WinDemoWeb.web26.WebService();
}
private web26.WebService ser;
private void btnSet_Click(object sender, EventArgs e)
{
ser.HelloWorld2Completed += new web26.HelloWorld2CompletedEventHandler(Hello_Completed);
ser.HelloWorld2Async(this.txtName.Text);
}
private void Hello_Completed(object sender,web26.HelloWorld2CompletedEventArgs e)
{
if (e.Error != null)
{
this.txtResult.Text = "has error";
}
if (e.Cancelled)
{
this.txtResult.Text = "has been Cancelled";
}
else
{
this.txtResult.Text = e.Result;
}
}
用这个ser.HelloWorld2Completed 事件就能很简单实现在异步了!
比以前的begin之后又end就好多少。大家用下啦!
下面是一个简单的例子。winform事例。
服务器端
[WebMethod]
public string HelloWorld2(string strName) {
System.Threading.Thread.Sleep(5000);
return "Hello World 2 " + strName;
}
没什么特别,只是用了个sleep增加返回值的时间。
客户端
两个textbox 一个输入字符串,经服务器加工后返回在第二个textbox中显示。
public Form1()
{
InitializeComponent();
ser=new WinDemoWeb.web26.WebService();
}
private web26.WebService ser;
private void btnSet_Click(object sender, EventArgs e)
{
ser.HelloWorld2Completed += new web26.HelloWorld2CompletedEventHandler(Hello_Completed);
ser.HelloWorld2Async(this.txtName.Text);
}
private void Hello_Completed(object sender,web26.HelloWorld2CompletedEventArgs e)
{
if (e.Error != null)
{
this.txtResult.Text = "has error";
}
if (e.Cancelled)
{
this.txtResult.Text = "has been Cancelled";
}
else
{
this.txtResult.Text = e.Result;
}
}
用这个ser.HelloWorld2Completed 事件就能很简单实现在异步了!
比以前的begin之后又end就好多少。大家用下啦!
相关文章推荐
- 体验.net 2.0 的优雅 -- 异步WebService调用
- 体验.net 2.0 的优雅(1) -- 异步WebService调用
- .net 异步调用webservice 并取得Webservice返回结果
- 体验.net 2.0 的优雅 - 异步WebService调用
- 使用java的xfire调用.net的webservice-王亮
- 使用.net调用xfire发布webservice的统一安全认证
- 使用异步方式调用WebService
- 【转】.NET 4.5 使用async和await关键字调用异步方法
- 使用java的xfire调用.net的webservice-王亮
- 使用cxf调用.net的Webservice
- 用Delphi7 调用.NET 2.0的WebService 所要注意的问题
- 使用异步方式调用WebService
- 使用.NET2.0编写COM组件供VB调用
- 使用Vbscript调用.NET WebService
- 使用nusoap调用.net WebService
- .NET异步方法调用的例子
- PHP使用SOAP调用.net的WebService问题
- Delphi 调用 .net 2.0 的WebService的错误(BUG?)
- android调用.net的webservice的例子获取手机的归属地
- Python使用SOAPpy调用.net写的WebService的乱码问题总结