亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

為Visual FoxPro開發(fā)者建立移動(dòng)解決方案

系統(tǒng) 2031 0

為Visual FoxPro開發(fā)者建立移動(dòng)解決方案

作者:Cathi Gero(Prenia公司 prenia.com)
翻譯:張洪舉( http://www.vfptop.com ) Microsoft Visual FoxPro MVP

日期:2003年5月

應(yīng)用于:
Microsoft? Visual Studio? .NET 2003
Microsoft? Visual FoxPro? 8.0

目錄
概述
挑戰(zhàn)
解決方案
ASP.NET Mobile控件如何工作
ASP.NET Mobile控件
操縱數(shù)據(jù)
擴(kuò)展你的Visual FoxPro應(yīng)用程序
結(jié)論

概述

無(wú)線和移動(dòng)解決方案已成為了許多公司的一個(gè)重要焦點(diǎn)。作為一個(gè)Visual FoxPro開發(fā)者,你可以擴(kuò)展你的現(xiàn)存應(yīng)用程序來(lái)公開信息,呈現(xiàn)在這些移動(dòng)設(shè)備上。為移動(dòng)設(shè)備建立應(yīng)用程序等同于如何為臺(tái)式機(jī)書寫應(yīng)用程序,開發(fā)者在今天建立臺(tái)式機(jī)應(yīng)用程序的時(shí)候,他們使用服務(wù)器開發(fā)或客戶端開發(fā)來(lái)建立桌面體驗(yàn)。因此,你具有一個(gè)從服務(wù)器端投影的用戶接口或運(yùn)行在客戶端的用戶接口,客戶端可以是一個(gè)瀏覽器或多格式客戶程序。

Compact Framework是客戶端版本,就象一個(gè)運(yùn)行在臺(tái)式機(jī)上的Visual FoxPro應(yīng)用程序。Compact Framework允許以控件形式的多格式客戶程序開發(fā),這些控件運(yùn)行在移動(dòng)設(shè)備上。你可以得到與操作系統(tǒng)上有用資源的集成,不管是在應(yīng)用程序里面使用電話直接呼叫的能力或與Pocket PC有用資源集成,例如SQL Server CE和Pocket Outlook;你也可以書寫脫機(jī)工作的應(yīng)用程序,因?yàn)榇a實(shí)際上是位于移動(dòng)設(shè)備上。

ASP.NET Mobile控件,以前叫做Mobile Internet Toolkit(MMIT),是Visual Studio .NET 2002的一個(gè)附加程序,與Visual Studio .NET 2003開發(fā)環(huán)境集成后被包含在一個(gè)PocketPC仿真工具中。ASP.NET Mobile控件允許開發(fā)者建立Web頁(yè)和內(nèi)容,其目標(biāo)是各種類型的移動(dòng)設(shè)備,包括移動(dòng)電話、PDA(個(gè)人數(shù)字助理,即掌上電腦)和頁(yè)導(dǎo)航。ASP.NET Mobile控件不僅僅是集成在Visual Studio .NET 2003中,它們也充任著對(duì)核心ASP.NET開發(fā)工具的擴(kuò)展。該白皮書關(guān)注如何為服務(wù)器使用ASP.NET Mobile控件建立移動(dòng)解決方案,并以使用Visual FoxPro進(jìn)行應(yīng)用程序書寫為基礎(chǔ)。

挑戰(zhàn)

Visual FoxPro開發(fā)者剛開始建立一個(gè)移動(dòng)Web站點(diǎn)面臨許多新增的復(fù)雜性,許多Visual FoxPro開發(fā)者已經(jīng)進(jìn)行了有關(guān)屏幕分辨率、cookies和其它問(wèn)題的討論。
當(dāng)在你涉及的移動(dòng)世界中看到數(shù)量眾多的設(shè)備時(shí),你面對(duì)的范圍從兩行只支持文本的移動(dòng)電話到豐富格式的Pocket PC,然后到RIM Blackberry設(shè)備和日本的DoKoMo設(shè)備,你涉及整個(gè)新的大批問(wèn)題和新的標(biāo)記語(yǔ)言。例如,Pocket PC支持HTML,美國(guó)和歐洲的移動(dòng)電話主要支持WML或Wireless標(biāo)記語(yǔ)言,以及日本的DoKoMo電話支持CHTML或Compact HTML。此外,如果所有各種各樣的標(biāo)記語(yǔ)言還不夠,你還具有不同的屏幕尺寸分辨率并要為不同屏幕尺寸標(biāo)記頁(yè)數(shù),以及各種標(biāo)記語(yǔ)言的瀏覽器工具,尤其WML是難以置信地多變化。因此,開發(fā)者應(yīng)當(dāng)找到一種方法來(lái)對(duì)每個(gè)支持WML的瀏覽器編碼,確保站點(diǎn)工作在所有設(shè)備上。

解決方案

ASP.NET Mobile控件允許你建立另一個(gè)表示層來(lái)公開Visual FoxPro應(yīng)用程序信息(見圖1),為臺(tái)式機(jī)建立一個(gè)表示層和為移動(dòng)設(shè)備建立另一個(gè)表示層。這一偉大的事情是你在對(duì)這兩個(gè)表示層一直使用相同的中間層商業(yè)邏輯,ASP.NET Mobile控件控制你需要建立移動(dòng)設(shè)備表示層,它們也被集成到Visual Studio .NET集成開發(fā)環(huán)境中,所以你得到了同樣的拖放操作環(huán)境(見圖2)。因?yàn)樵O(shè)計(jì)器是Visual Studio .NET的一部分,你具有你對(duì)標(biāo)準(zhǔn)ASP.NET Web應(yīng)用程序的完全調(diào)試能力。你可以使用任何在Visual Studio .NET中可用的程序語(yǔ)言來(lái)建立無(wú)線應(yīng)用程序。

圖1 ASP.NET Mobile控件利用ASP.NET使開發(fā)者能夠建立目標(biāo)是多個(gè)移動(dòng)設(shè)備的移動(dòng)Web應(yīng)用程序和站點(diǎn)
圖2 為更易于使用,ASP.NET Mobile控件被集成到Visual Studio .NET開發(fā)環(huán)境中
ASP.NET Mobile控件也支持內(nèi)置標(biāo)記頁(yè)數(shù),這是自動(dòng)分組數(shù)據(jù)的能力,其依賴于設(shè)備的性能。你可以使用在ASP.NET Mobile控件中的內(nèi)置分頁(yè)屬性,或者可以定義自定義標(biāo)記頁(yè)數(shù)。例如,如果一個(gè)WAP電話僅支持5行數(shù)據(jù)顯示,ASP.NET Mobile控件自動(dòng)建立next 和back 選項(xiàng),所以用戶可以更加容易地移動(dòng)整個(gè)數(shù)據(jù)集合。
ASP.NET Mobile控件如何工作
ASP.NET Mobile控件是一個(gè)對(duì)ASP.NET的擴(kuò)展,ASP.NET Mobile控件建立在.NET Framework和ASP.NET之上,該控件實(shí)際上繼承自ASP.NET Web Forms控件(見圖3)。
圖3 ASP.NET Mobile控件繼承自ASP.NET Web Forms控件
步驟:
1.Web客戶端請(qǐng)求Web頁(yè)。
2.該請(qǐng)求在Internet上傳播并被IIS接受到。
3.該請(qǐng)求然后被.NET Framework處理。
4.所請(qǐng)求Web頁(yè)由ASP.NET完成。
5.ASP.NET Mobile控件處理任何移動(dòng)設(shè)備請(qǐng)求。
6.Web頁(yè)然后返回到客戶端。
ASP.NET Mobile控件在運(yùn)行時(shí)計(jì)算設(shè)備性能。對(duì)于每個(gè)放置在移動(dòng)頁(yè)面上的控件,有一個(gè)相應(yīng)的適配器來(lái)呈現(xiàn)適合于該設(shè)備的標(biāo)記。 因此,你在頁(yè)面上以控件的形式設(shè)計(jì)功能事項(xiàng),然后在請(qǐng)求進(jìn)來(lái)時(shí),適配器被選擇來(lái)顯示請(qǐng)求設(shè)備的功能(見圖4)。例如,在一個(gè)多格式設(shè)備上的日歷可以以表格布局的方式顯示,并通過(guò)從表格選擇事項(xiàng)來(lái)為選擇日期提供一個(gè)美觀的豐富格式體驗(yàn);或在一個(gè)小型移動(dòng)電話上,通過(guò)改變顯示來(lái)選擇月,然后從該月選擇星期。所有你做的這些是操作移動(dòng)日歷,將其放置在頁(yè)面上,運(yùn)行時(shí)刻的響應(yīng)建立在移動(dòng)設(shè)備能夠處理什么的基礎(chǔ)上。

圖4 ASP.NET Mobile控件為各種設(shè)備自動(dòng)生成不同的輸出
設(shè)備仿真程序
設(shè)備仿真程序?yàn)橐苿?dòng)Web應(yīng)用程序第一階段測(cè)試提供了一個(gè)經(jīng)濟(jì)和可行的方法。你可以從你的臺(tái)式PC上測(cè)試一個(gè)移動(dòng)Web應(yīng)用程序,驗(yàn)證基本的界面和感覺(jué)、站點(diǎn)導(dǎo)航、核心功能和使用仿真程序來(lái)自Web站點(diǎn)的你期望的內(nèi)容。一個(gè)通用PocketPC仿真程序包含在Visual Studio .NET 2003中。可以用于ASP.NET Mobile控件的附加仿真程序列表,請(qǐng)?jiān)L問(wèn)" http://support.microsoft.com/default.aspx?scid=KB;en-us;320977"Microsoft Knowledge Base article 320977

ASP.NET Mobile控件

有許多控件可以用于開發(fā)Mobile應(yīng)用程序,表1顯示了一個(gè)所有控件的列表以及它們?nèi)绾闻cWeb Forms和Visual FoxPro控件關(guān)聯(lián)。
表1 對(duì)Web Forms、移動(dòng)Web Forms和Visual FoxPro控件的比較

容器控件
容器控件是其他控件的父級(jí),其為開發(fā)者提供了一種容易的方法來(lái)在頁(yè)面上組織控件組。對(duì)于移動(dòng)應(yīng)用程序可用的兩個(gè)容器控件是Form和Panel,你需要在頁(yè)面上具有Form控件來(lái)為其它移動(dòng)Web Forms控件工作,因?yàn)闆](méi)有一個(gè)由其它控件提供的功能在<mobile:Form>標(biāo)記集合之外是可用的。Panel控件也是一個(gè)容器控件,但是,該控件也必須被嵌套在一個(gè)Form控件中。
Form控件可以包含許多開發(fā)者想使用的控件,但是,要牢記不同設(shè)備的顯示限制。運(yùn)行時(shí)刻把每個(gè)Form作為一個(gè)獨(dú)立單元,并同時(shí)不發(fā)送更多Form到客戶端。在Web Form中,你傳輸不同的Web頁(yè), 在移動(dòng)Web Forms中,你傳輸不同的Form。所有Form被包含在一個(gè)Web頁(yè)中,要傳輸其它Form,設(shè)置屬性ActiveForm 為要傳輸Form的名稱:

      ActiveForm = Form2
    
      Panel控件提供了一個(gè)容器,與Visual FoxPro中的Container控件類似,其可以用于分組多個(gè)控件。這樣做,可以使用一個(gè)單個(gè)控件來(lái)顯示、隱藏、允許或禁止一個(gè)控件集合,也可以應(yīng)用格式到Panel上,其由子控件繼承。Panel 控件的其他應(yīng)用是其可以為動(dòng)態(tài)建立控件充當(dāng)一個(gè)占位符。
      
文本顯示控件
Label、TextBox和TextView控件可以被用于客戶端顯示文本。
Label控件僅用于客戶端顯示文本,文本是只讀的,并且控件不提供屬性或事件進(jìn)行配置。
TextBox控件提供在客戶端的單行數(shù)據(jù)輸入,可以用于顯示或收集文本或通過(guò)隱藏字符來(lái)充當(dāng)一個(gè)密碼數(shù)據(jù)輸入。
TreeView控件僅限于ASP.NET Mobile控件,其為多行文本顯示來(lái)呈現(xiàn)大量的文本,其也為黑體、斜體、分頁(yè)符、段落和錨定支持標(biāo)記標(biāo)簽設(shè)置。此外,TreeView控件支持標(biāo)記頁(yè)數(shù)。
列表和選擇控件
列表和選擇ASP.NET Mobile控件包括List、SelectionList和ObjectList控件,使用這些控件,客戶端可以從一組選項(xiàng)中進(jìn)行選擇和在表格中顯示信息。移動(dòng)設(shè)備在內(nèi)存、屏幕尺寸和數(shù)據(jù)輸入能力上很有限,其需要一個(gè)很長(zhǎng)的時(shí)間來(lái)輸入你的姓名和聯(lián)系信息到移動(dòng)電話瀏覽器或PDA中,因此,幫助用戶從建立的項(xiàng)目中選擇并限制輸入的總量是非常重要的,使用List和SelectionList控件在提供這些功能方面十分有用。
List控件可以被用于為用戶顯示一個(gè)短的選項(xiàng)列表,它可以顯示一個(gè)靜態(tài)列表或是一個(gè)交互列表。靜態(tài)列表被用于用戶只能查看的列表項(xiàng)目,不能選擇;使用交互列表,用戶可以進(jìn)行選擇和導(dǎo)航用戶界面,項(xiàng)目可以以數(shù)字或項(xiàng)目符號(hào)修飾,并且該控件支持標(biāo)記頁(yè)數(shù)。
      
         <mobile:List id="lstProduce" runat="server"  Decoration="Bulleted">
   <Item Value="1" Text="Apple"> </Item>
   <Item Value="3" Text="Banana"> </Item>
</mobile:List>
      
        SelectionList控件用于提供一個(gè)短的選項(xiàng)列表,該控件不支持標(biāo)記頁(yè)數(shù),所以它不能一次顯示超過(guò)一頁(yè)的信息,SelectionList控件支持多次選擇選項(xiàng)并可以被作為一個(gè)列表框、多選擇列表框、組合框、單選按鈕或選擇框來(lái)顯示。
      
        <mobile:SelectionList id="slstProduce" 
 runat="server" SelectType="Radio">
 <Item Value="1" Text="Onion"> </Item>
 <Item Value="2" Text="Celery"></Item>
</mobile:SelectionList>
ObjectList控件和在Web Form中DataGrid以及Visual FoxPro中的Grid控件類似,該控件可以被用于顯示多個(gè)字段,它應(yīng)當(dāng)與一個(gè)數(shù)據(jù)源關(guān)聯(lián)并可以把多個(gè)命令和控件中的每個(gè)對(duì)象關(guān)聯(lián)起來(lái)。該控件的示例顯示見圖5。
      
        <mobile:ObjectList id="objlstProduce" runat="server" 
   LabelField="ProductName" DataMember="Products" 
   DataSource="<%# Products1 %>"></mobile:ObjectList>

      
        圖5 ObjectList控件的示例輸出
        
表2顯示了一個(gè)列表和選擇控件之間的比較。
      
        傳輸控件
        
ASP.NET Mobile 控件提供了幾個(gè)用于傳輸或?qū)Ш降目丶篜honeCall控件、Link控件和Command控件,PhoneCall控件僅用于ASP.NET Mobile控件并為自動(dòng)呼叫生成標(biāo)記和顯示電話號(hào)碼,可以使用該控件開發(fā)一個(gè)表單來(lái)列出各個(gè)姓名,用戶可以使用電話設(shè)備自動(dòng)撥叫指定的號(hào)碼。
Link控件提供了一個(gè)基于文本的超級(jí)鏈接到移動(dòng)頁(yè)面上的其他表單或任何URL,通過(guò)設(shè)置SoftkeyLabel屬性,該控件也支持SoftKey—用于一些移動(dòng)電話上作為一個(gè)額外導(dǎo)航鍵(見圖6)。
          <mobile:Link id="lnkfrmResults" runat="server" 
NavigateUrl="#frmResults">Go to Results</mobile:Link>

        
          圖6 移動(dòng)電話上的SoftKeys
          
The Command控件與Visual FoxPro中的CommandButton類似,并被看作是一個(gè)比Link控件更具靈活性的控件。 Command控件基于設(shè)備的性能而以不同的形式顯示,對(duì)于移動(dòng)電話,其通常以一個(gè)基于文本的標(biāo)簽顯示并與Link控件相似,但是,在更多功能的PDA上,其以HTML顯示,該控件也支持SoftKeys。
            <mobile:Command id="cmdSelectProduct" runat="server" 
softkeylabel="Next">Select Product</mobile:Command>
圖像顯示控件
            
Image控件和AdRotator控件是由ASP.NET Mobile控件提供的圖像顯示控件,Image控件用于把圖像嵌入到移動(dòng)頁(yè)面并建立導(dǎo)航能力,如果圖像在請(qǐng)求的設(shè)備上不支持,則顯示替代文本。
              <mobile:Image id="imgPic" runat="server" ImageUrl=
 "winpro.gif" NavigateUrl="http://www.microsoft.com" 
 AlternateText="Windows 2000"></mobile:Image>
AdRotator控件在一個(gè)Web表單上顯示廣告標(biāo)題,每次表單加載或刷新時(shí),顯示的廣告隨機(jī)改變,該控件使用一個(gè)XML文件來(lái)檢索內(nèi)容進(jìn)行顯示。
              
Calendar控件
Calendar控件是一個(gè)豐富格式類,可以在搜集或跟蹤基于日期的數(shù)據(jù)時(shí)使用。該控件自身顯示的差異依賴于所用的設(shè)備(見圖7),有許多可設(shè)置屬性來(lái)控制日歷如何顯示。
圖7 Calendar控件顯示差異依賴于設(shè)備的類型
驗(yàn)證控件
ASP.NET Mobile控件提供了在移動(dòng)頁(yè)面上可以用于驗(yàn)證數(shù)據(jù)的各種控件,這些控件自動(dòng)驗(yàn)證給他們分配的控件的數(shù)據(jù)。如果數(shù)據(jù)沒(méi)有通過(guò)驗(yàn)證,控件顯示一個(gè)自定義錯(cuò)誤信息給客戶端。一個(gè)這些控件的列表以及在何時(shí)使用每個(gè)控件見表3。
表3 移動(dòng)頁(yè)面可用的所有驗(yàn)證控件列表
名稱功能
CompareValidator 比較兩個(gè)值
CustomValidator 提供自定義驗(yàn)證
RangeValidator 驗(yàn)證一個(gè)范圍
RegularExpressionValidator 驗(yàn)證一個(gè)表達(dá)式
RequiredFieldValidator驗(yàn)證請(qǐng)求數(shù)據(jù)
ValidationSummary 顯示一個(gè)驗(yàn)證摘要
操縱數(shù)據(jù)
數(shù)據(jù)訪問(wèn)是任何應(yīng)用程序的一個(gè)至關(guān)重要部分,有很少一些Visual FoxPro應(yīng)用程序不要求使用數(shù)據(jù)。移動(dòng)應(yīng)用程序也應(yīng)當(dāng)訪問(wèn)動(dòng)態(tài)數(shù)據(jù),.NET Framework包含了一個(gè)數(shù)據(jù)訪問(wèn)命名空間和類的集合,叫做ADO.NET。ASP.NET使用ADO.NET來(lái)執(zhí)行它的數(shù)據(jù)處理,ADO.NET被特定地設(shè)計(jì)使用OLE DB或XML進(jìn)行最佳化數(shù)據(jù)訪問(wèn)。對(duì)象模型(見圖8)和ADO類似,并由一個(gè)Connection對(duì)象(提供連接到一個(gè)數(shù)據(jù)源)和一個(gè)Command對(duì)象(在數(shù)據(jù)庫(kù)上執(zhí)行命令來(lái)返回或修改數(shù)據(jù)、運(yùn)行存儲(chǔ)過(guò)程,等等)構(gòu)成,此外,你可以使用ADO.NET作為一個(gè)強(qiáng)壯的、分層的、斷開連接的數(shù)據(jù)存儲(chǔ)器進(jìn)行脫機(jī)數(shù)據(jù)工作,使用中心斷開連接對(duì)象、數(shù)據(jù)集合來(lái)進(jìn)行排序、搜索、過(guò)濾、保存掛起修改和導(dǎo)航整個(gè)分層數(shù)據(jù)。在設(shè)計(jì)移動(dòng)應(yīng)用程序時(shí),你可以使用兩種不同的途徑訪問(wèn)數(shù)據(jù):使用Visual FoxPro OLE DB provider來(lái)直接訪問(wèn)表或移動(dòng)應(yīng)用程序調(diào)用一個(gè)Visual FoxPro COM 對(duì)象來(lái)檢索數(shù)據(jù)并返回XML。
圖8 ADO.NET對(duì)象模型
為直接數(shù)據(jù)訪問(wèn)使用Visual FoxPro OLE DB Provider
開發(fā)者可以使用Visual FoxPro OLE DB provider來(lái)直接訪問(wèn)表并綁定到控件上,數(shù)據(jù)可以在一個(gè)移動(dòng)頁(yè)面中被顯示和修改,OLE DB provider執(zhí)行一個(gè)COM接口集合,該集合允許訪問(wèn)在標(biāo)準(zhǔn)行/列格式中的數(shù)據(jù)。OLE DB provider支持Visual FoxPro數(shù)據(jù)庫(kù)事件,你可以調(diào)用存儲(chǔ)過(guò)程(以及要求的參數(shù))、訪問(wèn)觸發(fā)器、規(guī)則和在數(shù)據(jù)庫(kù)容器中的默認(rèn)值。在Visual FoxPro 8.0中,OLE DB provider被增強(qiáng)來(lái)為ADO.NET提供更大的兼容性。下列代碼示例顯示了如何從一個(gè)客戶的Visual FoxPro表檢索記錄并在一個(gè)List控件中顯示結(jié)果。
                    Dim connStr As String = "Provider=VFPOLEDB.1;Data Source=" & _
    "C:\SAMPLES\DATA\TESTDATA.DBC"

Dim strSQL As String = "SELECT * FROM Customer"
Dim oda As New OleDbDataAdapter(strSQL, connStr)
Dim ds As New DataSet()

oda.Fill(ds, "CustomerInfo")

'Assign DataSet to List control
lstCountry.DataTextField = "Country"
lstCountry.DataValueField = "Country"
lstCountry.DataSource = ds
lstCountry.DataBind()
使用ADO.NET SQL Client Data Provider,同樣的功能可以用于訪問(wèn)SQL Server數(shù)據(jù)(版本7.0和后期版本),提供的程序執(zhí)行和OLE DB provider同樣的基類,下面前面示例使用SQL Server數(shù)據(jù)的代碼。
                  
                    
                      Dim connStr As String = "Data Source=(local);" & _ 
    "Initial Catalog=Northwind;" & _
    "Integrated Security=SSPI;" & _
    "Persist Security Info=False"

Dim strSQL As String = "SELECT * FROM Customers"
Dim oda As New SqlDataAdapter(strSQL, connStr)
Dim ds As New DataSet()

oda.Fill(ds, "CustomerInfo")

'Assign DataSet to List control
lstCountry.DataTextField = "Country"
lstCountry.DataValueField = "Country"
lstCountry.DataSource = ds
lstCountry.DataBind()
為數(shù)據(jù)訪問(wèn)使用Visual FoxPro COM對(duì)象
                      
Visual FoxPro是一個(gè)建立基于數(shù)據(jù)訪問(wèn)和字符串處理的中間層組件的強(qiáng)大工具,它為開發(fā)者提供創(chuàng)建基于組件的應(yīng)用程序的能力。Visual FoxPro 8.0為在COM對(duì)象里操縱數(shù)據(jù)時(shí)的更強(qiáng)大控制引入了新增功能。
Visual FoxPro 8.0提供對(duì)XML支持的增強(qiáng)—特別是增進(jìn)了與Visual Studio .NET數(shù)據(jù)集合和diffgrams的兼容性。XMLAdapter類支持分層X(jué)ML格式,這改進(jìn)了Visual FoxPro從.NET生成并寫入到.NET數(shù)據(jù)集合進(jìn)行內(nèi)部操作的能力。Visual FoxPro 8.0 可以讀取和寫入到分層X(jué)ML并轉(zhuǎn)換為獨(dú)立的本地臨時(shí)表,在XML是分層但是不代表一個(gè)關(guān)聯(lián)表集合時(shí),它使用一個(gè)表表示一個(gè)多表SQL Join 命令的結(jié)果,只有一個(gè)Visual FoxPro臨時(shí)表被建立。
                      * VFP示例XMLAdpater 代碼

&& 建立XMLAdapter
oXMLAdapter = NEWOBJECT("XMLAdapter")

&& 設(shè)置XML類型為Diffgram
oXMLAdapter.IsDiffgram = .T.
      
&& 以schema信息添加一個(gè)臨時(shí)表
oXMLAdapter.AddTableSchema(customers)
oXMLAdapter.AddTableSchema(orders)
      
&& 將表導(dǎo)出到分層X(jué)ML
oXMLAdapter.ToXML("cXML")

Return cXML
下面是一個(gè)寫入到Visual Basic .NET 的代碼示例,其顯示了如何調(diào)用Visual FoxPro COM對(duì)象。
                    
                      
                        ' VB .NET調(diào)用VFP COM對(duì)象示例代碼 

' 調(diào)用VFP COM對(duì)象
Dim oCustomer As New Customer()

' 調(diào)用COM對(duì)象的方法來(lái)讀取數(shù)據(jù)
Dim cXML As String
cXML = oCustomer.GetData()

' 讀取XML到數(shù)據(jù)集合
Dim ds As New DataSet()
ds.ReadXml(New StringReader(cXML))
擴(kuò)展你的Visual FoxPro應(yīng)用程序
                        
在Visual FoxPro開發(fā)者使用ASP.NET Mobile控件時(shí),他們可以利用現(xiàn)存應(yīng)用程序來(lái)延伸到新用戶。信息可以從應(yīng)用程序中被取出并顯示在移動(dòng)設(shè)備上,使不能訪問(wèn)信息的用戶能夠檢索數(shù)據(jù)。例如,銷售經(jīng)理在路上需要他每個(gè)商店的銷售數(shù)字,在這種情況下,他可以使用一個(gè)允許訪問(wèn)Internet的移動(dòng)電話或Pocket PC來(lái)訪問(wèn)一個(gè)ASP.NET移動(dòng)Web站點(diǎn),則站點(diǎn)傳送銷售信息到他的移動(dòng)設(shè)備上。經(jīng)理控制著什么時(shí)候訪問(wèn)銷售數(shù)字,他不依靠某人從總部通過(guò)一個(gè)傳真機(jī)或電話來(lái)為其提供信息。Visual FoxPro信息可以通過(guò)使用OLE DB provider直接數(shù)據(jù)訪問(wèn)或使用COM商業(yè)對(duì)象來(lái)檢索。通過(guò)使用ASP.NET Mobile控件,你可以給予用戶無(wú)論在何時(shí)何地得到其想要信息的能力,除非你沒(méi)有運(yùn)行Visual FoxPro應(yīng)用程序。
                        結(jié)論
                      
                        作為移動(dòng)設(shè)計(jì)技術(shù)和高速無(wú)線網(wǎng)絡(luò)的可用性在增加,客戶對(duì)基于移動(dòng)的內(nèi)容和功能來(lái)擴(kuò)展Visual FoxPro應(yīng)用程序的要求也在增加。因此,你可以利用ASP.NET Mobile控件的能力。通過(guò)可靠的移動(dòng)Web應(yīng)用程序來(lái)提供信息給客戶。ASP.NET Mobile控件提供了一個(gè)基礎(chǔ)結(jié)構(gòu)來(lái)給開發(fā)者建立強(qiáng)壯的應(yīng)用程序,控件與當(dāng)前系統(tǒng)的外觀和感覺(jué)融合,它們有巨大的潛力來(lái)影響人們處理信息的方式和信息被訪問(wèn)、使用的環(huán)境。
                        

為Visual FoxPro開發(fā)者建立移動(dòng)解決方案


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 成人免费动作大片黄在线 | 亚洲视频高清 | 国产成+人+综合+欧美 亚洲 | 国产精品视频网 | 国内视频一区 | 亚洲成a人片在线观看www | 热re99久久精品国产99热 | www国产永久免费视频看看 | 青草青视频在线观看 | 性短视频在线观看免费不卡流畅 | 国产精品久久久久久网站 | 日韩在线一区二区三区 | 欧美一级欧美三级在线观看 | 欧美日韩一区二区三区毛片 | 狼狼色丁香久久婷婷综合五月 | 国产精品免费久久久免费 | 黄页网址大全免费观看美女 | 亚洲另类视频在线观看 | 欧美一级毛片特黄大 | 久久一区视频 | 国产在线一区在线视频 | 国产日产欧美 | 中文字幕久久综合 | 一区二区三区网站在线免费线观看 | 国产婷婷一区二区三区 | 天天插天天射天天干 | 欧洲亚洲精品 | www.香蕉网| 久久免费视频在线 | 日韩中文字幕精品一区在线 | 亚洲成人高清在线观看 | 国产精品亚洲第一区二区三区 | 欧美激情中文字幕一区二区 | 欧美成在线视频 | 亚州精品永久观看视频 | 精品国产一区二区三区四 | 欧美日韩午夜视频 | 国产一级理论免费版 | 香蕉人精品视频多人免费永久视频 | 99热久久精品国产66 | 亚洲精品国产手机 |