中文字幕 另类精品,亚洲欧美一区二区蜜桃,日本在线精品视频免费,孩交精品乱子片免费

<sup id="3hn2b"></sup>

    1. <sub id="3hn2b"><ol id="3hn2b"></ol></sub><legend id="3hn2b"></legend>

      1. <xmp id="3hn2b"></xmp>

      2. 新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > .NET的數(shù)據(jù)傳輸之道

        .NET的數(shù)據(jù)傳輸之道

        作者: 時間:2012-05-02 來源:網(wǎng)絡 收藏

        litm.SubItems(1)=XMLRS(Description)

        本文引用地址:http://www.antipu.com.cn/article/149158.htm

        litm.SubItems(2)=XMLRS(Price)

        XMLRSMoveNext

        Loop

        XMLRSClose

        代碼說明:

        傳遞給SOAP方法的兩個參數(shù)(DNS和SQL)是從TextBox控件中取得的,其返回值是XML格式的ADO數(shù)據(jù)集。如需了解同SOAPCall函數(shù)及其參數(shù)有關的更詳細信息,請參閱我的循序漸進文章“為Microsoft做好準備”。

        正如您看到的,整個實現(xiàn)方式類似于ADORecordset的使用方式(簡化了代碼復用)。以“XMLRS…”開始的這些函數(shù)保存在XMLRS.bas模塊,讓我們深入到模塊內(nèi)部看一下。以下是XMLRSOpen函數(shù)中的一部分代碼:

        'CreateDOMobject

        SetpoXML=CreateObject(Microsoft.XMLDOM)

        'Loadstring

        psXML=XML

        'LoadDOM

        poXML.loadXMLpsXML

        'Positiondatanodes

        SetpoDataNodes=poXML.documentElement.selectNodes(//rs:data)

        SetpoDataNodes=poDataNodes.Item(0).childnodes

        代碼說明:

        psXML變量用來存放ADORecordset的XML表述。

        PoXML變量是XMLDOM對象,用來存放記錄集數(shù)據(jù)。

        PoDataNodes變量保存所有記錄集數(shù)據(jù)行的XML元素。

        我們現(xiàn)在有了一個對象,該對象包含了記錄集中的所有數(shù)據(jù)行,它就是我們開始數(shù)據(jù)導航所需要的東西。我們可以使用XMLRSMoveFirst和XMLRSMoveNext函數(shù)進行數(shù)據(jù)導航。下面讓我們仔細考察一下XMLRSMoveNext函數(shù):

        'ChecknotEOF

        IfNotXMLRSEOF()Then

        'Increasepointer

        piRecordPos=piRecordPos+1

        EndIf

        為了理解整個程序邏輯,讓我們看看XMLRSEOF函數(shù):

        'CheckEOF

        IfpiRecordPos>poDataNodes.length-1ThenXMLRSEOF=True

        現(xiàn)在,我們需要知道如何取出實際數(shù)據(jù),完成這一工作的是XMLRS:

        'Checkiffieldnumberorfieldname

        IfIsNumeric(FieldID)Then

        'GetFieldData

        XMLRS=poDataNodes(piRecordPos).Attributes(FieldID).Text

        Else

        'GetFieldData

        XMLRS=poDataNodes(piRecordPos).Attributes.getNamedItem(FieldID).Text

        EndIf

        正如您所看到的,我們可以提供一個字段名(就像我在窗體代碼中所做的)以及一個字段序號

        如需了解更多詳細信息,我建議您認真閱讀完整的示例的代碼。

        助你上路

        您應該仔細分析XMLRS.bas模塊,我在此只提供了幾個必需的函數(shù)。以便您能很快上手。當然,我們還應該實現(xiàn)更多的ADORecordset功能。因為該模塊使用了XMLDOM對象,您需要具有一些XML知識。

        當然,這并不是一個解決這個問題的“企業(yè)級”解決方案。我希望ADOCE能在將來在Recordset(或者類似構造)中加入對XML的支持,這樣就不用再使用XMLRS.bas模塊了。如果容量發(fā)生了變化,只需對我提供的這些代碼做一些小的修改即可,從而保護了您的前期投資和工作。

        同時,如果您決定在該模塊的基礎上完成一些開發(fā)工作,您可以同我聯(lián)系。我將利用您完成的增強版本對本文所介紹的示例代碼進行升級。這將極大地增加您的知名度!

        未來會怎樣

        我相信,在不遠的將來,所有的特性都將在PocketPC得到應用。其中可能包括類似“連接斷開”式ADORecordsets和XML支持這樣一些特性。我甚至相信,將ADORecordset數(shù)據(jù)(XML)封裝進SOAP調(diào)用這一過程對開發(fā)人員來說將是透明的。

        您可以修改XMLRS.bas以使其適應新的XML數(shù)據(jù)集結構,您也可以簡單地對代碼進行升級,使用Recordset功能代替XMLRS中的函數(shù)。

        小結

        從任何地方對企業(yè)數(shù)據(jù)加以訪問的能力所蘊藏的能量是異常巨大的。在多層解決方案(帶有組件)中,您可以允許您的業(yè)務邏輯被世界各地的用戶所使用,甚至是那些無線用戶。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉