演练:表示间接 Web 服务连接
更新:2007 年 11 月
在 Visual Studio Team System Architecture Edition 中,可以使用 ASP.NET Web 服务应用程序作为类库中的业务函数的外观。分布式系统设计器不支持直接在应用程序关系图上设计或表示类库。但是,您仍然可以通过 ASP.NET Web 服务应用程序表示类库行为。
在应用程序关系图上表示类库
打开应用程序关系图。
将新的“ASP.NETWebService”添加到关系图中,并将其命名为“MyWebService”。将 .NET Web 服务终结点命名为“FirstWebService”。
此操作将创建作为类库外观的 Web 服务。
右击“MyWebService”,再单击“实现应用程序”。
将一个新的“ASP.NETWebApplication”添加到关系图中,将其命名为“MyWebApplication”并实现它。
此操作将创建一个客户端 Web 应用程序,它通过“FirstWebService”使用类库中的函数。
右击“MyWebApplication”,再单击“设置和约束”以查看“设置和约束编辑器”。
展开“应用程序设置”、“目录”和“配置”节点。
右击“NetSectionGroup”节点,指向“添加资源”,再单击“SettingsSection”。
添加此资源后,解决方案资源管理器中将出现一个 Web.config 文件。
在解决方案资源管理器中,右击“解决方案”节点,再单击“新建项目”。
随即出现“添加新项目”对话框。
在“项目类型”下,展开“Visual Basic”或“Visual C#”节点,再单击“窗口”。在“模板”下,单击“类库”,再单击“确定”。
解决方案资源管理器中将出现一个类库项目。
右击类库项目节点,再单击“添加 Web 引用”。
随即出现“添加 Web 引用”对话框。
单击“此解决方案中的 Web 服务”。
在“此解决方案中的 Web 服务”下,单击“FirstWebService”,再单击“添加引用”。
此操作将为类库中的“FirstWebService”添加一个 Web 引用。
在类库项目保持选中状态的情况下,单击“生成”菜单上的“生成 <类库名称>”。
此操作将生成类库并将一个 App.config 文件添加到类库项目中。
在解决方案资源管理器中,右击“MyWebApplication”项目节点,再单击“添加引用”。
随即出现“添加引用”对话框。
单击“项目”选项卡,单击类库项目,再单击“确定”。
此操作将类库的引用添加到“MyWebApplication”中。
在“MyWebApplication”项目中打开 Web.config 文件。
在类库项目中打开 App.config 文件。
将 App.config 中的 <configSections> 一节复制并粘贴到 Web.config 中。此节的内容如下所示:
<configSections> <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > <section name="ClassLibrary1.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </sectionGroup> </configSections>
将 App.config 中的 <applicationSettings> 一节复制并粘贴到 Web.config 中的 <configSections> 下面。此节的内容如下所示:
<applicationSettings> <ClassLibrary1.Settings> <setting name="ClassLibrary1_localhost_WebService1" serializeAs="String"> <value>https://localhost:1665/MyWebService/FirstWebService.asmx</value> </setting> </ClassLibrary1.Settings> </applicationSettings>
Web.config 的开始部分现在应如下所示:
<configuration xmlns="https://schemas.microsoft.com/.NetConfiguration/v2.0"> <configSections> <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" > <section name="ClassLibrary1.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> </sectionGroup> </configSections> <appSettings> </appSettings> <applicationSettings> <ClassLibrary1.Settings> <setting name="ClassLibrary1_localhost_WebService1" serializeAs="String"> <value>https://localhost:1665/MyWebService/FirstWebService.asmx</value> </setting> </ClassLibrary1.Settings> </applicationSettings> <connectionStrings/> <system.web>
生成解决方案,然后查看应用程序关系图。
“MyWebApplication”上出现一个使用方终结点。此使用方终结点连接到“MyWebService”上的“FirstWebService”终结点。此终结点表示从类库项目中的 Web 引用到 Web 服务的连接。