从 SOAP Toolkit 迁移到 Web 服务
了解 Microsoft® Visual Studio® .NET 中的 SOAP 工具的基础上,如何从 Visual Basic 6.0 和 Visual Basic .NET 访问 Web 服务,以及如何将现有的 SOAP 应用程序转换到 .NET 平台。
注意:SOAP 文档中使用的名称空间 tempuri.org 是一个临时名称空间,仅在开发时使用 (temporary uri)。在此服务投入到产品之前,应修改 WSDL 文件,使其拥有唯一的 URI(例如,您公司网站的 URL)。
SOAP Toolkit 对象和 Visual Studio .NET IDE 都读取 WSDL 文件。SoapClient 使用 WSDL 文件中的信息以使其作为 Web 服务的代理。Visual Studio .NET 使用同样的信息为 Web 服务生成代理类。因此,您可以执行以下操作:
调用 Web 服务的方法,好像它们是这些代理的方法。
发送消息前,根据 Web 服务的 WSDL 描述验证调用。
与代理交互,而不必熟悉 WSDL 文件的内容或要生成的 SOAP 文档。
图 1 显示了各个组件之间的关系,包括 Web 服务元语言 (WSML) 文件。只有 Visual Basic 6.0 需要此文件,并在其演练中描述此文件。

图 1:Web 服务和客户端示意图
在 SOAP 中,SOAP Toolkit 和 Visual Studio .NET IDE 执行类似的功能。所不同的是,SOAP Toolkit 对象不能提供 Visual Basic 开发人员所需的全部支持。在图 2 中,可以看到 IntelliSense® 支持(Visual Basic 程序员认为此类支持是必要的)。IntelliSense 下拉列表自动显示 Customerservices COM 对象的 createCustomer 方法。

图 2:COM/DCOM/COM+ 对象的 IntelliSense 支持
在图 3 中,您可以看到 SoapClient 为 Web 服务提供的 IntelliSense 支持。所有的 SoapClient 方法均列出,但没有显示将 SoapClient 作为代理的服务所拥有的方法(即 createCustomer)。

图 3:使用 SoapClient 的 IntelliSense 支持
- 本文关键词:

