科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件ASP.NET中利用SQLXML WEB服务访问XML数据

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

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

使用SQLXML 的Web 服务从你的ASP.NET应用程序中直接访问XML 数据

作者:郑伟 来源:yesky 2007年11月8日

关键字: Windows

  • 评论
  • 分享微博
  • 分享邮件
配置 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 minOccurs="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 地址代替。
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章