透視和調整你的企業和商務系統(Ⅲ:SOAP、WebService、Server) (ccBoy原創)

來源:互聯網
上載者:User
和調整你的企業和商務系統(Ⅲ:SOAP、WebService、Server)
小氣的神 2001-10-12
    好了,終於可以開始使用Microsoft SOAP Toolkit將上面的建立的Bus_Authors轉換成一個WebService了,我使用的是Microsoft SOAP Toolkit 2.0 SP2,簡單的Version()的我就跳過了,不再廢話,MS的隨機協助有這方面的說明。因為我更感興趣ADODB.Recordset的問題,不過失望的是,使用WSDL Generator產生的WSDL不能支援ADODB.Recordset的類型
產生的WSDL檔案中,產生這樣的XML:
  <message name='Authors.GetAuthors'>
  </message>
  <message name='Authors.GetAuthorsResponse'>
    <part name='Result' type='xsd:???????'/>
  </message>
根據隨機文檔特別是Handling Complex Types一節中的描述,我們需要使用一個Custom Type Mapper(CTM)來處理ADODB.Recordset的格式。先講一下下面需要做的步驟吧:
1.   產生一個自訂的類型轉換類處理ADODB.Reocrdset類型
2.   修改由WSDL Generator產生的WSDL檔案。
3.   設定IIS,配置好Authors的WebService
4.   產生用戶端測試這個WebService
先來產生ADODB.Recordset 的CTM,主要是實現SOAP Toolkit庫中的MSSOAPLib.ISoapTypeMapper介面,這一點上我認為是MS SOAP Toolkit 2.0 的一個重大提高,比起上一個SOAP Toolkit版本更組件化和便於使用,現在你用VB就可以完成這個CTM了,建立一個VB ActiveX DLL項目,拷入下面的代碼,(我產生的組件叫AdoTypeMapper.AdoRstTypeMapper)如果另外安裝了MS SOAP Toolkit 2.0裡面好像有一個這樣的ADODB.Recorset的例子。
Option Explicit
Implements MSSOAPLib.ISoapTypeMapper
Private Function ISoapTypeMapper_read( _
    ByVal pNode As MSXML2.IXMLDOMNode, _
    ByVal bstrEncoding As String, _
    ByVal encodingMode As MSSOAPLib.enEncodingStyle, _
    ByVal lFlags As Long) As Variant
    Dim RecordSet As New ADODB.RecordSet
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.