当使用 Visual Studio .NET 创建托管代码中的 XML Web services 时,您使用标准的开发模型:编译项目,然后将最终文件部署到成品服务器上。项目 .dll 文件包含 XML Web services 代码隐藏类文件(.asmx.vb 或 .asmx.cs)和项目中包含的所有其他类文件,但不包含 .asmx 文件本身。然后,不使用任何源代码将此单个项目 .dll 文件部署到成品服务器。当 XML Web services 接到请求时,加载并执行项目 .dll 文件。
编译和部署托管代码中的 XML Web services
假设您具有一个名为 WebService1 的简单的 ASP.NET Web 服务项目,该项目包含以下内容:
名为 Service1.asmx 的 XML Web services 输入页。
一些附加的模块,名为 Service1.vb(或 .cs)和 BusinessLogic.vb(或 .cs),它们包含商务逻辑。
当编译项目时,发生以下情况:
Visual Studio 保存上一次生成之后您修改的项目中的所有文件。
Visual Studio 将 Service1.asmx 文件和默认的项目文件复制到开发 Web 服务器。
Service1.asmx.vb(或 .asmx.cs)类文件、Global.asax 类文件和 BusinessLogic.vb (.cs) 类文件被编译到项目 .dll 文件中,然后该 .dll 文件又被复制到服务器中目标虚拟目录的默认 \Bin 目录中。如果项目被设置为编译调试版本,则 Visual Studio 在 \Bin 目录中创建项目 .pdb 文件。
注意 如果发生编译错误,部署将不能成功。有关更多信息,请参见调试托管代码中的 XML Web services。
若要将 XML Web services 部署到非开发服务器的服务器上,您可以添加 Web 安装项目或者将所需的文件复制到目标服务器上。若要使 XML Web services 可由他人使用,必须将其部署到想要支持的客户端可以访问的 Web 服务器上。有关更多信息,请参见部署应用程序和组件和复制项目。
使用 Web 安装项目部署 XML Web services
在“文件”菜单上指向“添加项目”,然后单击“新建项目”。
选择“安装和部署项目”文件夹,然后单击“Web 安装项目”。
在“名称”框中键入部署项目的名称,然后单击“确定”。
在“解决方案资源管理器”中,右击部署项目。在快捷菜单上,指向“添加”,然后单击“项目输出”。
在“添加项目输出组”对话框中选择“主输出”、“调试符号”和“内容文件”。有关更多信息,请参见在文件系统编辑器中添加和移除项目输出。
“主输出”组由项目 .dll 文件及其依赖项组成。
调试符号组由项目 PDB 文件组成。
“内容文件”组由 XML Web services 的其余文件(如 .asmx、.asax 和 .config 文件)组成。
单击“确定”。
通过复制项目来部署 XML Web services
在“解决方案资源管理器”中,选择要复制的项目。
在“项目”菜单上,单击“复制项目”。
在“目标项目文件夹”框中输入要将该项目复制到的位置。
选择“FrontPage”或“文件共享”以选择“Web 访问方法”。有关更多信息,请参见更改 Web 项目访问方法。
选择“仅限于运行该应用程序所需的文件”。
单击“确定”。
在部署 XML Web services 之后,您需要考虑如何使开发人员可以定位它(如果您要让其他人使用它)。