本篇內容主要講解“怎么解決ADO記錄集問題”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么解決ADO記錄集問題”吧!
學習ADO時,你可能會遇到ADO記錄集問題,這里將介紹ADO記錄集問題的解決方法,在這里拿出來和大家分享一下。根據您決定使用哪一種上述解決方案,可以有幾種不同的方法來實現這一點。我們將單獨考察每個解決方案。返回的數據是記錄集的一種簡單XML數據表示?,F在,我們將使用MicrosoftXMLDocumentObjectModel(DOM)來檢索此數據,以便在內部循環處理每一條記錄,XML對這一過程的表示如下:
PrivateSubCommand1_Click() DimaryArtists()AsString DimoRopeasNewRope.Proxy oRope.LoadServicesDescriptionicURI,"http://MyServer/GetArtists.xml" GetArtistsFromXMLoRope.GetAllArtists(),aryArtists() '現在aryArtists()是包含我們的藝術家的一個數組 SetoRope=Nothing EndSub http://www.mscto.com PrivateSubGetArtistsFromXML(ByValsXMLAsString,ByRefaryArtists()AsString) DimoXMLAsNewMSXML.DOMDocument DimoXMLDocumentAsMSXML.IXMLDOMElement DimiCountAsInteger DimxAsInteger oXML.loadXMLsXML SetoXMLDocument=oXML.documentElement iCount=oXMLDocument.childNodes.length ReDimaryArtists(iCount-1) Forx=0ToiCount-1 aryArtists(x)=oXMLDocument.childNodes.Item(x).Text Next SetoXML=Nothing SetoXMLDocument=Nothing EndSub
Command1_Click()方法使用ROPE調用服務。因為該服務按解決方案1中指定的方式返回數據,所以現在就可以傳遞包含在我們的XML字符串中的返回數據。我們按值傳遞該字符串,并按引用傳遞一個將被置入PublicSubGetArtistsFromXML中的空數組。此過程置入數組并將它返回給調用過程。數組變量aryArtists()現在包含我們的藝術家的一個數組。為了將此XML數據返回給一個ADO記錄集,我們需要將數據加載到XMLDOM中,然后使用ADO記錄集的OPEN方法創建藝術家的記錄集:
PrivateSubCommand1_Click() DimoRSAsADODB.Recordset DimoRopeasNewRope.Proxy oRope.LoadServicesDescriptionicURI,"http://MyServer/GetArtists.xml" SetoRS=CreateADORSFromXML(oRope.GetAllArtists()) '現在oRS是包含我們的藝術家數據的一個分離的ADO記錄集 SetoRope=Nothing SetoRS=Nothing EndSub PrivateFunctionCreateADORSFromXML(ByValsXMLAsString)AsADODB.Recordset DimoXMLAsNewMSXML.DOMDocument DimoRSAsNewADODB.Recordset oXML.loadXMLsXML oRS.OpenoXML SetCreateADORSFromXML=oRS SetoRS=Nothing SetoXML=Nothing EndFunction
在Command1_Click()事件中,ROPE對象調用我們的方法,該方法會就像在解決方案2中那樣返回我們的XML字符串。通過調用CreateADORSFromXML函數,就可以設置一個對象引用從SOAP返回數據創建一個分離的記錄集。
到此,相信大家對“怎么解決ADO記錄集問題”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。