ASP.NET中利用SQLXML WEB服务访问XML数据(2)

发表于:2007-06-30来源:作者:点击数: 标签:
配置 MyWebService 为你的Web 服务创建一个WSDL( Web 服务定义语言) 文件和一个SQL 服务器 配置(.ssc) 配置文件。 ssc 文件描述了虚拟名称类型配置,并且SQLXML 使用它来生成WSDL 文件。 而WSDL 文件描述了Web 服务以及当使用Web服务时你的应用程序可以调用
     配置 MyWebService
  
    为你的Web 服务创建一个WSDL( Web 服务定义语言) 文件和一个SQL 服务器配置(.ssc) 配置文件。 ssc 文件描述了虚拟名称类型配置,并且SQLXML 使用它来生成WSDL 文件。 而WSDL 文件描述了Web 服务以及当使用Web服务时你的应用程序可以调用的方法。
  
    在设置一个SOAP虚拟名称类型之后,选择SQLXML 3.0 的IIS 虚拟目录管理工具下面的虚拟名称选项卡中的配置选项。 为了设置一个存储过程方法映射用于你的SOAP虚拟名称类型,选择SP/Template选项下面的CustOrdersDetail存储过程,然后选择Save选项。在完成这步之后,浏览你的nwind虚拟目录并寻找名为soap.wsdl的文件,这个文件是XML格式的WSDL 文件,描述了你配置的服务。 我们可以在任何一个文本编辑程序里打开,文件可能会象这样:
  
  <xsd:element name="CustOrdersDetail">
  <xsd:complexType>
  <xsd:sequence>
  <xsd:element minOclearcase/" target="_blank" >ccurs="0" maxOccurs="1"
  name="OrderID" type="xsd:int"
  nillable="true"/>
  </xsd:sequence>
  </xsd:complexType>
  </xsd:element>
  <xsd:element name="CustOrdersDetailResponse">
  <xsd:complexType>
  <xsd:sequence>
  <xsd:element minOccurs="1" maxOccurs="1"
  name="CustOrdersDetailResult"
  type="sqlresultstream:SqlResultStream"/>
  <xsd:element name="returnValue"
  type="xsd:int" nillable="true"/>
  </xsd:sequence>
  </xsd:complexType>
  </xsd:element>
  
  
    这段由SQLXML生成的CustOrdersDetail WSDL 文件片段(SOAP.wsdl),向我们展示了CustOrdersDetail 方法的配置,包括输入和输出参数的定义。
  
    构造ASP.net 客户端
  
    在配置完SQLXML Web 服务之后,你需要开发一个客户应用程序来访问这个服务并且执行它的任何操作。 首先,创建一个新的C # 或VB.Net ASP.NET Web 应用程序并把它命名为WebServiceClient。你需要添加3 个控件到默认的Web表单上去: 一个带有ID btnRequest 的按钮,和两个TextBox 控件,一个是ID txtOrderID ,另一个是ID txtResponse。 设置txtResponse TextBox控件的TextMode属性为 MultiLine 以便支持从Web服务中返回的XML应答。表单应该像图2那样。
  
  
  
  
    在添加控件之后,你将需要给你刚刚建立的Web 服务添加一个引用。 为了做到这一点,在VS. NET中,点击Solution Explorer窗口中的References文件夹,在References文件夹上用右键点击,然后Add Web Reference菜单选项。(见图3)
  
  
  
  你选择的URL 参考你以前创建的Web 服务。 注意我使用的服务器名为localhost,参考我的IIS 的本地实例,虚拟目录路径是nwind,对于Northwind数据库虚拟目录,Web 服务名为MyWebService。如果你没有使用一台本地服务器,你将需要在URL 里用你的服务器名或者IP 地址代替。
  

原文转自:http://www.ltesting.net