VB6.0调用WebServices的简单示例

本文介绍了如何使用VB6.0调用WebServices来获取和处理数据,包括调用返回ADO记录集、DataSet以及自定义数据类型的示例。通过WebServices,即使在资源有限的传统POS机上也能实现对远程数据库如PostgreSQL的读写操作。
摘要由CSDN通过智能技术生成

  在.NET平台中期望值最高,广告做的最多的要算是WebServices了。WebServices是Web上的类,与Web应用程序不同的是,这个类不返回HTML页面,只以XML文档返回一个或几个值。因此,任何能够处理XML的应用程序都可以调用其方法和使用其结果。WebServices更多是Internet上的应用,不过小型企业内部系统开发使用WebServices,也有许多好处。个人认为,与COM+和DCOM相比,从布置到维护,WebServices更胜一筹。同时,从COM数据据传输转换到XML大大提高了应用程序的伸缩性和相互操作性,对不同的需求,可以用不同的语言开发相应的应用程序,并共享数据。 这里不深入探讨WebServices和XML,只示例通过VB6.0调用VS2005编译的WebServices。

  作为VB6.0的程序员和爱好者,数据库开发中的ADO 2.0是再熟悉不过的了。不过.NET平台对ADO的结构体系作了扩展,增加了组件,解决了其不足,优化了性能,也就是ADO.NET。与熟悉的ADO相比,已经有太多的不同。那么,如何在VB6.0中通过WebServices获取记录集呢?示例如下:

' ==================== WebServices的代码 ===================

' 首先要在COM组件中添加ADO

Imports  System.Web
Imports  System.Web.Services
Imports  System.Web.Services.Protocols
Imports  System.Data
Imports  System.Data.Odbc
Imports  System.Configuration.ConfigurationManager
Imports  System.Xml
Imports  ADODB

< WebService( Namespace:="http://tempuri.org/")> _
<WebServiceBinding(ConformsTo:=WsiProfiles.BasicProfile1_1)> _
<Global.Microsoft.VisualBasic.CompilerServices.DesignerGenerated()> _
Public Class TEST
    
Inherits System.Web.Services.WebService

    
'读取config中的连接字符串
    Public Function cnString() As String
        
Return ConnectionStrings("connToPgSql").ToString()
    
End Function


  
'ADO记录集转换为XML
    <WebMethod()> _
    
Public Function RecordsetToXmlTest(ByVal Uid As StringAs XmlDataDocument

        
Dim sql As String = "select * from  where uid='" & Uid & "'"
        Dim cn As New Connection
        
Dim rs As New Recordset
        
Dim st As New Stream
        
Dim xd As New XmlDataDocument

        cn.ConnectionString 
= cnString
        cn.Open()

        rs.Open(sql, cn, CursorTypeEnum.adOpenForwardOnly, LockTypeEnum.adLockReadOnly, 
1)
        rs.Save(st, PersistFormatEnum.adPersistXML)
        st.Flush()
        st.Position 
= 0
        xd.LoadXml(st.ReadText(st.Size))

        
Return xd

        st 
= Nothing
        rs 
= Nothing
        cn 
= Nothing
        xd 
= Nothing

    
End Function


End Class



''======================== VB6.0 的代码 ======================

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值