1. 程式人生 > >AgileEAS.NET SOA 中介軟體平臺5.2版本下載、配置學習(四):開源的Silverlight執行容器的編譯、配置

AgileEAS.NET SOA 中介軟體平臺5.2版本下載、配置學習(四):開源的Silverlight執行容器的編譯、配置

一、前言

     AgileEAS.NET SOA 中介軟體平臺是一款基於基於敏捷並行開發思想和Microsoft .Net構件(元件)開發技術而構建的一個快速開發應用平臺。用於幫助中小型軟體企業建立一條適合市場快速變化的開發團隊,以達到節省開發成本、縮短開發時間,快速適應市場變化的目的。

     AgileEAS.NET SOA中介軟體平臺提供了敏捷快速開發軟體工程的最佳實踐,通過提供大量的基礎支撐功能如IOC、ORM、SOA、分散式體系及敏捷併發開發方法所支撐的外掛開發體系,以及提供了大量的實體、資料模型設計生成工具、程式碼生成工具,用於幫助中小軟體開發商快速成長。

     AgileEAS.NET平臺充分把握目前軟體行業快速發展的新趨勢,基於敏捷並行開發、快速適應市場這樣淳樸的軟體工程實踐,採用業界廣泛使用的Microsoft .Net構件(元件)開發技術實踐了這種開發思想,幫助軟體企業實現“敏捷變化、快速適合”的目標,從而幫助軟體企業在激烈的市場競爭中贏得先機並獲得更高的回報。

二、關於Silverlight執行容器

     在2011年秋天的的時候,曾經在Silverlight企業應用開發實踐-AgileEAS.NET平臺5.0 Silverlight支撐預覽一文之中向大家介紹過AgileEAS.NET SOA中介軟體平臺的Silverlight執行容器,其主要目的是當時有很多朋友希望我們能支撐Silverlight的應用開發,我們就基於我們AgileEAS.NET SOA中介軟體平臺的“敏捷並行開發思想事件”、結合“外掛開發&整合”思路、AgileEAS.NET SOA中介軟體平臺的資料訪問並結合AgleEAS.NET SOA中件的SOA分散式通訊技術。

     目前AgileEAS.NET SOA中介軟體Silverlight執行容器主要應用於醫療、物聯網、ERP、CRM之類人企業內部應用之中。

     AgileEAS.NET SOA 中介軟體平臺Silverlight執行容器為開發人員帶來如下好處:

     1.)開發Silverlight應用同開發WinForm/WPF/WebForm/WebMVC應用一樣可以使用AgileEAS.NET SOA提供的ORM和Linq技術。

     2.)Silverlight應用同其他WinForm/WPF/WebForm/WebMVC應用使用同樣的分散式服務端平臺。

     3.)Silverlight應用同其他WinForm/WPF/WebForm/WebMVC應用使用同樣的服務端業務程式碼。

     4.)為應用開發人員提供了類似在Silverlight客戶段直接訪問遠端資料庫的功能,提供了類似DataTable的資料結構Matrix

     5.)AgileEAS.NET SOA中介軟體平臺已經實現了與WinForm/WPF執行環境同樣的資源管理平臺的系列功能(模組管理、許可權、使用者、角色)以及工作流系統絕大多數功能。

     6.)AgileEAS.NET SOA中介軟體平臺Silverlight執行容器原始碼是以開源形式向大家提供的,大家可以在此基礎上做一些在學大的調整。

三、學習Silverlight執行容器程式碼結構並進行編譯

     ActiveXForm執行容器的執行網站由在”Silverlight.src”目錄之中以原始碼形式向大家提供,我們用VS2010或者VS2012開啟”Silverlight.src”目錄之中的”AgileEAS.NET.Silverlight”解決方案:

vg

    ”AgileEAS.NET.Silverlight”解決方案之中共有九個專案:

     EAS.BPM.SilverlightUI:為BPM工作流系統的介面元素檔案,AgileEAS.NET SOA中介軟體的Silverlight執行環境的工作流支援管理功能功能都由這個專案提供。

     EAS.Demo.Res:AgileEAS.NET SOA中介軟體的Silverlight執行環境的客戶端演示資源外掛,即用於替換AgileEAS.NET SOA中介軟體的Silverlight執行環境主介面,登入介面的介面定義程式碼的一個示例。

     EAS.Explorer:AgileEAS.NET SOA中介軟體的Silverlight執行環境的一些介面定義,主要是資源替換介面的定義。

     EAS.Explorer.Entities:AgileEAS.NET SOA中介軟體的Silverlight執行環境管理功能的資料實體定義,比如賬號、角色、模組、報表等物件的定義。

     EAS.Explorer.BLL.Contracts:AgileEAS.NET SOA中介軟體的Silverlight執行環境管理功能的服務契約定義,因為Silverlight是分散式執行的,即業務的實現在SOA服務之中執行,所以客戶端只有業務契約,沒有實現實體。

     EAS.SilverlightClient:AgileEAS.NET SOA中介軟體的Silverlight執行環境主要程式,在這裡面實現了一個可替換的外掛應用環境。

     EAS.SilverlightClient.AddIn:AgileEAS.NET SOA中介軟體的Silverlight執行環境管理功能的實現程式,主要實現了模組管理、角色賬號、許可權、組織機構等等。

     EAS.SilverlightClient.AdminKit:輔助程式,本身沒有多大意思,其功能是把EAS.SilverlightClient.AddInEAS.BPM.SilverlightUI打成一個EAS.SilverlightClient.AdminKit.xap包。

     EAS.SilverlightClient.Web:AgileEAS.NET SOA中介軟體平臺Silverlight執行容器的入口網站,即功能承載網站,包括一個首頁及Silverlight XAP包的部署目錄及客戶端執行時所需要的配置檔案和XAP包的自動升級配置。

     瞭解了這九個專案的功能之後我們開始編譯整個解決方案,保證所有專案編譯通過:

1$FB9RUKZMNGR@ILJCZ7JZ7

      瞭解了這八個專案的功能之後我們開始編譯整個解決方案,保證所有專案編譯通過:

四、配置並執行Silverlight執行容器

    Silverlight應用是不直接連線資料庫進行處理的,所以配置ActiveXForm執行容器/環境必須有一個先決條件,那就是Silverlight必須執行的AgileEAS.NET SOA 中介軟體的分散式環境下,即我們的SOA服務端必須執行,關於如何做這此工作,請參考前面的AgileEAS.NET SOA 中介軟體平臺5.2版本下載、配置學習(二):配置WinClient分散式執行環境一文。

     那麼我們首先啟動執行“AppServer\Bin”目錄之中的“soaserver.start.bat”指令碼,執行SOA服務:

CL0879FSTVXHDVLF_thumb2_thumb

     接下來我們開始配置Silverlight執行容器的一些引數、以及Silverlight客戶端XAP檔案的升級配置,這些配置資訊記錄在專案”EAS.SilverlightClient.Web”的“ClientBin”目錄之中,檔名稱為“slconfig.xml”和“slUpdate.xml”。

ox

     其中“slconfig.xml”為Silverlight應用的系統配置檔案,其內容如下:

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <eas>
   3:   <configurations>
   4:     <item name="Key" value="Value" />
   5:     <!--是否除錯狀態。-->
   6:     <item name="Debug" value="false" />
   7:     <!--除錯程式集。-->
   8:     <item name="Assembly" value="EAS.SilverlightClient.AddIn" />
   9:     <!--外掛資源包。-->
  10:     <!--<item name="EAS.Explorer.Resource" value="EAS.Explorer.Res.xap,EAS.Explorer.Res.dll,EAS.Explorer.Res.Resources" />-->
  11:   </configurations>
  12:   <objects>
  13:     <!--分散式通訊元件。-->
  14:     <object name="ServiceBridger" assembly="EAS.MicroKernel" type="EAS.Distributed.ServiceBridger" LifestyleType="Thread" >
  15:       <property name="ServiceUrl" type="string" value="http://localhost:6608/eas/services/EAS.RIAService" />
  16:     </object>
  17:     <object name="DataAccessor" assembly="EAS.Data" type="EAS.Data.Access.DataAccessor" LifestyleType="Thread">
  18:       <property name="ServiceBridger" type="object" value="ServiceBridger"/>
  19:     </object>
  20:     <object name="OrmAccessor" assembly="EAS.Data" type="EAS.Data.ORM.OrmAccessor" LifestyleType="Thread">
  21:       <property name="ServiceBridger" type="object" value="ServiceBridger"/>
  22:     </object>
  23:   </objects>
  24: </eas>

     其中引數Debug表示系統是否為除錯模式,即載入某一個Silverlight程式集並自動載入其中的外掛進行除錯執行,如果這個值為True,則系統會自動載入引數Assembly所指向的程式集,並載入其中的外掛到系統導航之中,並跳過系統對登入賬號的對所載入模組的許可權檢查,直接執行,如果這個引數為False,則Assembly引數無效,系統按照當前登入賬號的許可權載入導航,執行時也執行模組許可權檢測,一版情況下在開發過程之中我們都採用除錯模式,這樣可以省去安裝配置外掛的過程,而在生產過程,我們則使用非除錯模式。

     引數EAS.Explorer.Resource為外掛介面資源的配置,類似於WinClient的配置,我們不要修改他。

    對像ServiceBridger的屬性ServiceUrl配置了遠端RIA服務的地址,即SOA服務實現之中的RIA服務的地址:

   1: <object name="ServiceBridger" assembly="EAS.MicroKernel" type="EAS.Distributed.ServiceBridger" LifestyleType="Thread" >
   2:   <property name="ServiceUrl" type="string" value="http://localhost:6608/eas/services/EAS.RIAService" />
   3: </object>

     一搬情況下,我們只需要修改IP地址或者域名即可,後面的不要做修改。

     接下來我們開啟升級配置“slUpdate.xml”:

   1: <?xml version="1.0" encoding="utf-8"?>
   2: <SmartConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   3:   <URI>http://www.smarteas.net/</URI>
   4:   <Name>AgileEAS.NET升級配置檔案</Name>
   5:   <Description>用於AgileEAS.NET平臺SmartClient/ActiveX執行容器模組升級之用</Description>
   6:   <StartEx />
   7:   <Time>2013-10-16T16:13:19.7125705+08:00</Time>
   8:   <Files>
   9:     <SmartFile>
  10:       <FileName>EAS.SilverlightClient.AdminKit.xap</FileName>
  11:       <Version>1.1.0.0</Version>
  12:       <Time>2013-10-16T09:54:19.7125705+08:00</Time>
  13:     </SmartFile>
  14:     <SmartFile>
  15:       <FileName>WF.Demo.SilverlightUI.xap</FileName>
  16:       <Version>1.1.0.0</Version>
  17:       <Time>2013-10-16T09:54:19.7125705+08:00</Time>
  18:     </SmartFile>
  19:   </Files>
  20: </SmartConfig>

    這個配置檔案結構等同於前面的AgileEAS.NET SOA 中介軟體平臺5.2版本下載、配置學習(二):配置WinClient分散式執行環境一文之中“EAS.SmartUpdateConfig.exe”工作所生成的檔案,只不過,此處手工配置,而不是工具生成,我們需要把下載到客戶端Silverlight環境之中的檔案(主要是一些XAP包)以SmartFile配置資訊形式記錄在這個配置檔案之中,需要多次注意的是,客戶端會依據這個檔案的最後時間進行更新。

H}%J{UX[HQD$9@{6@{$IP}Q

    OK,Silverlight環境的配置到這就可以了,接下來我們執行AgileEAS.NET SOA 中介軟體Silverlight執行容器看看。

     按F5執行”EAS.SilverlightClient.Web”專案,開啟瀏覽器

image

    輸入使用者名稱:Administrator,密碼:sa然後點選登入,系統會有如下有“是否增加可用儲存”的提示:

H49HBB@JLFRQ[`L_USR(QV7

    因為AgileEAS.NET SOA 中介軟體設定為支援Silverlight的本地儲存檔案,以快取XAP包和某些業務資料,我們選擇點選“”,然後重新輸入密碼進行登入,將會開啟系統主介面:

image

    我們選擇某個功能進行操作:

image

    OK,Silverlight執行容器搞定。

五、聯絡我們

     為了完善、改進和推廣AgileEAS.NET而成立了敏捷軟體工程實驗室,是一家研究、推廣和發展新技術,並致力於提供具有自主智慧財產權的業務基礎平臺軟體,以及基於業務基礎平臺了開發的管理軟體的專業軟體提供商。主要業務是為客戶提供軟體企業研發管理解決方案、企業管理軟體開發,以及相關的技術支援,管理及技術諮詢與培訓業務。

     AgileEAS.NET平臺自2004年秋呱呱落地一來,我就一直在逐步完善和改進,也被應用於保險、醫療、電子商務、房地產、鐵路、教育等多個應用,但一直都是以我個人在推廣,2010年因為我辭職休息,我就想到把AgileEAS.NET推向市場,讓更多的人使用。

     技術團隊成員都是合作多年的老朋友,因為這個平臺是免費的,我們的營運開支主要靠為客戶提供諮詢服務所得,我們都是因為程式設計師的那種理想與信念堅持,在此我感謝一起奮鬥的朋友和一直支援我們工作的客戶、朋友。

QQ:47920381

AgileEAS.NET QQ群:

113723486(AgileEAS SOA 平臺)/上限1000人

199463175(AgileEAS SOA 交流)/上限1000人

120661978(AgileEAS.NET 平臺交流)/上限1000人

212867943(AgileEAS.NET研究)/上限500人

147168308(AgileEAS.NET應用)/上限500人

172060626(深度AgileEAS.NET平臺)/上限500人

116773358(AgileEAS.NET 平臺)/上限500人

125643764(AgileEAS.NET探討)/上限500人

193486983(AgileEAS.NET 平臺)/上限500人

郵件:[email protected],[email protected],

電話:18629261335。