我们创建了Web服务,下面就看看如何使用这个Web服务。利用Visual Studio .NET创建Proxy类
在Visual Studio .NET里创建Web服务使用的Proxy类是件轻而易举的事情,在ASP.NET Web项目里,在“引用”上单击右键,选择“添加Web引用”,这时会弹出一个对话框,要你输入一个URL地址,请输入http://aspnet.4guysfromrolla.com/ws/ASPFAQs.asmx,然后你就会看到这个Web服务的描述(就象你在Web浏览器里直接看到的那样),最后单击“添加引用”按钮,Visual Studio .NET会自动为你创建一个Proxy类,并且进行编译。当你把它添加进你的工程里时,Proxy类的名称空间可能就是你的网站地址,比如:com.4guysfromrolla.aspnet,当然你还可以任意改成其他的任何名字。从你的Web页面里通过Proxy类调用Web服务就象你使用本地组件进行调用一样方便。假设你想显示ASP.NET类别(category ID为22)FAQS的列表,我们可以通过调用Web服务的GetFAQsInCategory方法,在参数里传入22,并把返回的DataSet绑定到一个DataGrid,代码可能象如下的写法那样:
Private Sub Page_Load(sender as Object, e as EventArgs)
'创建Proxy类的实例
Dim consumeWebService as com._4guysfromrolla.aspnet.ASPFAQs
Set consumeWebService = New com._4guysfromrolla.aspnet.ASPFAQs
'把GetFAQsInCategory结果绑定到dgCategoryFAQs
dgCategoryFAQs.DataSource = consumeWebService.GetFAQsInCategory(22)
dgCategoryFAQs.DataBind()
End Sub检查一下上面的代码,你可能不明白对com._4guysfromrolla.aspnet.ASPFAQs Proxy类的调用实际上就是远程Web服务的调用,当调用Proxy类的GetFAQsInCategory方法时,会进行复杂的数据通讯(HTTP的请求/响应)。