一切随风

......---谁还记得那曾经的胡同
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Web Service与windows客户端的有效结合

Posted on 2005-01-25 16:35  随风  阅读(739)  评论(2)    收藏  举报

最近看了点关于webservice的文章,感觉webservice和客户端的结合是一种很不错的方式。
下面是一个webservice和客户端结合的例子:
首先建立一个ASP.Net Web服务

在Service1.asmx开始处,引用类库using System.Data.SqlClient;
在[WebMethod]处填写方法:
[WebMethod]
 public DataSet GainDS(string querystr)
 {
   try
   {
      SqlConnection sqlcon = new SqlConnection("server=local;database=Northwind;uid=admin;pwd=admin");
      SqlDataAdapter myadapter = new SqlDataAdapter (querystr, sqlcon);
      DataSet myds = new DataSet(); 
      myadapter .Fill(myds);
      return myds;
    }
    catch(Exception ex)
    {
        throw ex;
    }
  }
编译后运行结果如下:

点击GainDS方法,跳转到如下页面:

在querystr中输入sql语句,点击调用就可以查看到需要的结果了,只不过结果在网页中是以XML的形式显示的。

前期工作已经完成,那么如何让我们写好的webservice和windows客户端有效的结合呢?
首先建立一个新的windows应用程序;
然后在应用程序工程文件中右键选择‘添加web引用’,在URL中填入webservice地址:http://localhost/WebServiceTest/Service1.asmx,点击‘确定’。

在form_load方法中添加代码:
private void Form_Load(object sender, System.EventArgs e)
{
   webclient.Service1 client = new OwcTest.webclient.Service1();
   string querystr = "select * from ordertitle";
   this.dataGrid1.DataSource = client.GainDS(querystr);
}
运行结果如下:


如果没有网速,数据量等的限制,这种方法应该是一个实现智能客户端(SL)的不错方式。
如果有兴趣大家可以一起讨论(hanfeng0831at hotmail.com)


                                                                                                                                                                                                                          Copyright © 随风