WEB服务代理类的使用

王朝other·作者佚名  2006-01-10
宽屏版  字体: |||超大  

在应用程序和WEB服务之间来回传递包含公共属性和域的类,在处理结构化数据时这个功能很有用:

通过创建WEB服务代理类在应用程序内访问WEB服务,其实质是远程WEB服务类的属性和方法的本地代表

顺便写出使用流程:

1>首先建立一个WEB 服务项目,重新命名一个服务文件:myProductSerivce.asmx

2>在myProductSerivce.asmx写代码:

写你的WEB 服务方法:

如:

[WebMethod(CacheDuration=30,Description="这是一个返回DataSet的WEB服务!")]

public DataSet GetProducts()

{

string constr;

constr="server=MICROSOFT-LAB2;user id=sa; password=; database=Northwind";

string sql;

sql="select top 10 productname,unitprice,discontinued from products";

SqlConnection mycon=new SqlConnection ();

mycon.ConnectionString =constr;

SqlDataAdapter myadp=new SqlDataAdapter (sql,mycon);

DataSet ds=new DataSet ();

myadp.Fill (ds);

mycon.Close ();

myadp.Dispose ();

return ds;

}

3>创建WEB服务之后,在命令行执行Wsdl.exe工具为服务产生代理类:

Wsdl /l:cs http://localhost/myProductService.asmx?WSDL

4>然后,执行下面的CS命令;编译代理类(通过上面的命令把此服务转化成了类文件)

csc /t: library /r:System.dll,System.Web.Services.dll,System.xml.dll,System.Data.dll

myProductService.cs

5>在的ASP.NET项目中引用上面创建的DLL,并且添加对system.web.services的引用

这时就可以在代码中使用了,就象以前一样调用他的方法:

如:

myProductService mypro=new myProductService ();

DataGrid1.DataSource =mypro.GetProducts();

DataGrid1.DataBind();

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有