powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源

powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源

ID:26290977

大小:3.07 MB

頁數(shù):14頁

時間:2018-11-25

powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源_第1頁
powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源_第2頁
powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源_第3頁
powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源_第4頁
powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源_第5頁
資源描述:

《powerbuilder 11的.net互操作能力-創(chuàng)建和使用.net資源》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、PowerBuilder11的.NET互操作能力創(chuàng)建和使用.NET資源JohnStranoPowerBuilder11將整個應(yīng)用作為.NETWindowsForm或WebForm應(yīng)用來部署,將單獨的組件作為.NET程序集和.NETWeb服務(wù)來部署。PowerBuilder11使用默認(rèn)的.NET框架資源和開發(fā)人員自定義的.NET資源。非PowerBuilder.NET解決方案可以互操作和利用PowerBuilder在數(shù)據(jù)訪問和數(shù)據(jù)操作方面獨一無二的高生產(chǎn)能力。簡而言之,PowerBuilder11創(chuàng)建和使用.NET資源。一旦PowerBuilder

2、11已經(jīng)將一個應(yīng)用或組件部署為.NET,開發(fā)人員可以通過PowerScript的增強功能,在已有腳本基礎(chǔ)上利用外部.NET資源。PowerBuilder11中腳本的.NET互操作能力是通過一個新的條件編譯特性實現(xiàn)的。在代碼的預(yù)處理塊中為用作.NET互操作的聲明、引用和調(diào)用等聲明條件編譯。這些預(yù)處理塊的結(jié)構(gòu)類似于IF語句。如果開發(fā)人員指定了這些#IF/THEN/#ELSE/#ELSEIF塊僅在.NET運行時執(zhí)行,那么PowerBuilder的Win32編譯器就忽略它們。條件編譯開發(fā)人員無需牢記新結(jié)構(gòu)的語法,或被IDE和幫助文檔間的不斷切換打斷思路。

3、PowerScript編輯器增加了一個有助于提高生產(chǎn)能力的功能,該功能使開發(fā)人員可以快速粘貼想要的.NET#IF語句(如圖1所示)。圖1預(yù)處理變量允許開發(fā)人員設(shè)定統(tǒng)一的.NET部署條件,如果開發(fā)人員愿意的話可以為特定的部署如WinForm,WebForm,Web服務(wù)等設(shè)定(如表1所示)目標(biāo)類型預(yù)定義的預(yù)處理器本地PB(Win32)PBNATIVE.NETWindowsForm應(yīng)用PBWINFORMPBDOTNET.NETWebForm應(yīng)用PBWEBFORMPBDOTNET.NETWeb服務(wù)PBWEBSERVICEPBDOTNET.NET程序集PB

4、DOTNET表1創(chuàng)建對.NET程序集的引用一旦開發(fā)人員確認(rèn)想利用某一.NET資源,就需要將這一.NET程序集引入PowerBuilder.NET目標(biāo)的域,這樣才可以生成引用它的腳本。無論你的PowerBuilder.NET目標(biāo)是作為WinForm、WebForm、.NET程序集還是.NETWeb服務(wù),在PowerBuilder系統(tǒng)樹的那個目標(biāo)上單擊鼠標(biāo)右鍵,并在彈出菜單中選擇“Properties。..”(如圖2所示)。在目標(biāo)屬性窗口中選擇“.NETAssemblies”Tab頁,單擊這個按鈕你就可瀏覽選擇你要程序集。選好后單擊OK關(guān)閉目標(biāo)的屬性

5、窗口。圖2在本教程中,我選擇一個程序集MSCORLIB.DLL,它是默認(rèn).NET框架的一部分的(如圖3所示)。想要的話,你可以展開系統(tǒng)樹的程序集節(jié)點來瀏覽程序集公共接口中有哪些可用的東西。圖3調(diào)用命名空間中的類假設(shè)我想使用MSCORLIB的System.Collections命名空間中的ArrayList。在“#IFdefinedPBDOTNET”預(yù)處理塊中,我聲明了一個System.Collections.ArrayList類型的變量,創(chuàng)建了ArrayList的實例,然后給變量賦值引用這個實例。之后的事情就很簡單了,調(diào)用ArrayList的ad

6、d()方法來填充實例,然后,在這個純理論的例子中,連接成一個簡單的字符串。對于條件編譯存在的一系列限制和.NET互操作能力的通用約束,請參考PowerBuilder11的文檔。#ifDEFINEDPBDOTNETthensystem.collections.ArrayListalal=createsystem.collections.ArrayListal.add(“PWERBUILER11…”)al.add(“VERY”)al.add(“PRODUCTIVE”)stringss=al[0].tostring()+“”+al[1].tostrin

7、g()+“”+al[2].tostring()+“!”//indexstartsfrom0!sle_text=s#endif注意完成AllayList類的實例化的語法是“create”而不是“new”。顯然.NET預(yù)處理代碼塊中的代碼實際上是PowerScript的變種,而不是C#的。跨語言的數(shù)據(jù)交換既然PowerScript編譯器不識別.NET預(yù)處理代碼塊中的代碼,那么就不能在預(yù)處理代碼塊外引用代碼塊內(nèi)聲明的變量。如果開發(fā)人員需要使用預(yù)處理代碼塊中產(chǎn)生的一個值,就應(yīng)該在代碼塊之前聲明一個變量,在塊中賦值,然后在代碼塊之后引用。當(dāng)在被管理程序集的

8、命名空間中調(diào)用類的方法時,應(yīng)特別小心地使用與PowerScript數(shù)據(jù)類型對應(yīng)的正確類型。例如在下面的數(shù)據(jù)類型映射表中特別注意Power

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。