来生成源文件:
/l - 此开关指定源文件的语言。本例中,我们指定 Visual Basic 语言。也可以指定 CS (C#) 语言,这将生成 C# 源文件。
/o - 此开关指定输出文件的名称。Visual Basic 源文件应该具有 .vb 文件扩展名。C# 源文件应具有 .cs 文件扩展名。
注意:使用 /? 开关可以获得关于 WSDL 的详细信息。
传递给 WSDL 的 URL 是指向 Web 服务合约的 URL。Web 服务合约是一个文档,列出了应该提供给该 Web 服务的信息类型和它将返回的信息类型。Web 服务合约的 URL 就是在 Web 服务入口点 URL 末尾附加 ?wsdl。
现在我们已经成功地生成了用于编译 Web 服务代理类的 Visual Basic .NET 源代码文件。
编译 Web 服务代理
创建 Visual Basic .NET 源文件后,我们需要将其编译进 Web 服务代理中。要这样做,我们将使用随 .NET Framework SDK 附带的 Visual Basic .NET 编译器。
要编译代理类,请在打开的命令提示符下键入:
Vbc /t:library /out:c:\8Ball\8BallClient.dll
/r:System.dll /r:System.XML.dll /r:System.Web.Services.dll c:\8Ball\8Ball.vb
我们使用以下的开关来生成代理类:
/t - 此开关指定要生成的程序集类型。本例中,我们要编译 DLL 文件,所以指定程序集类型为 library。
/out - 此开关指定输出文件的名称。因为我们指定了 library 的程序集类型,因此输出文件名称必须具有 .dll 文件扩展名。
/r - 此开关指定程序集的引用。本例中,我们引用三个 Microsoft .NET 命名空间,所有的 Web 服务代理客户端都需要这三个命名空间。它们是 System、System.XML 和 System.Web.Services 命名空间。
编译器完成代理类的编译后,驱动器 C 的 8Ball 目录中就有了名为 8BallClient.dll 的文件。这就是代理客户端。稍后我们将把它移动到正确的位置。您可以关闭命令提示符窗口,我们将继续创建用于与 EightBall Web 服务进行交互的界面。
设计 ASP.NET 界面
现在我们已大体了解了需要创建的界面,并且已成功编译了 Web 服务代理类。下一步是创建 ASP.NET 窗体,用于与 EightBall Web 服务交互。
设计 ASP.NET 界面之前,需要创建一个 FrontPage 项目。创建新的单页 Web 站点并命名为 8Ball。必须在安装了 ASP.NET 的 Web 服务器上创建该站点,这点很重要。
创建了 8Ball 站点后,需要确保将其标记为应用程序的根。步骤如下:
1. 单击“开始”,指向“设置”,单击“控制面板”来打开控制面板。
2. 双击“管理工具”。
3. 双击“Internet 服务管理器”(Windows 2000) 或“Internet Information Services”(Windows XP Professional)。
4. 展开“默认 Web 站点”节点,以便看到 8Ball 站点。(在 Windows XP Professional 中,您需要展开“Web 站点”节点来找到“默认 Web 站点”节点)
5. 右键单击 8Ball 节点并选择“属性”。
6. 将打开“属性”对话框,并显示“目录”选项卡。如果没有,请单击“目录”选项卡。
7. 在“应用程序设置”部分中,单击“创建”按钮将该站点设为应用程序的根。
8. 单击“确定”。
该 Web 站点现在已成为应用程序的根,我们可以继续创建 ASP.NET 用户界面了。
用户界面中将使用三个 ASP.NET Web 窗体控件。TextBox 控件用于输入 EightBall Web 服务的问题,Button 控件用于初始化对 Web 服务的请求,而 Label 控件用于显示从 Web 服务收到的回答。所有这些控件都包含在 ASP.NET 窗体中。
使用 Microsoft Visual Studio .NET 来设计 Web 窗体非常容易,只需要拖放窗体元素并在用户界面中设置这些元素的属性即可。本例中,我们没有使用 Visual Studio .NET,所以不得不通过手动编码生成窗体元素。
创建 Web 窗体
需要做的第一件事是创建 Web 窗体自身的代码。如果您熟悉超文本标记语言 (HTML) 的窗体代码,那么对该代码也一定很熟悉。打开 8Ball 站点的主页并切换到 HTML 视图。在现有的 标记中键入以下代码:
<form runat="server"></form>
此时,应保存本页面并继续以下步骤。将页面保存为 8ball.aspx。
添加 ASP.NET Web 窗体控件
创建窗体后,需要添加 ASP.NET Web 窗体控件。
首先,添加 TextBox 控件。这是 Web 页用户输入 EightBall Web 服务问题的地方。要添加 TextBox 控件,请在开始和结束
您可能注意到在 FrontPage 的普通视图中看不到这些控件。这正是所希望的,因为这些是 ASP.NET Web 窗体控件,FrontPage 不能显示它们。
连接 Web 服务
如果复查已经添加的代码,会发现当单击按钮时,调用了名为 getAnswer 的过程。这是服务器端的过程,负责:
创建代理客户端类的实例。
调用 EightBall Web 服务的 Ask 函数并向其传递我们的问题。
设置 Label 上一页 [1] [2] [3] 下一页 |