AgileEAS.NET SOA 中間件平臺是一款基於基於敏捷並行開發思想和Microsoft .Net構件(組件)開發技術而構建的一個快速開發應用平臺。用於幫助中小型軟件企業創建一條適合市場快速變化的開發團隊,以達到節省開發成本、縮短開發時間,快速適應市場變化的目的。git
AgileEAS.NET SOA中間件平臺提供了敏捷快速開發軟件工程的最佳實踐,經過提供大量的基礎支撐功能如IOC、ORM、SOA、分佈式體系及敏捷併發開發方法所支撐的插件開發體系,以及提供了大量的實體、數據模型設計生成工具、代碼生成工具,用於幫助中小軟件開發商快速成長。程序員
AgileEAS.NET平臺充分把握目前軟件行業快速發展的新趨勢,基於敏捷並行開發、快速適應市場這樣淳樸的軟件工程實踐,採用業界普遍使用的Microsoft .Net構件(組件)開發技術實踐了這種開發思想,幫助軟件企業實現「敏捷變化、快速適合」的目標,從而幫助軟件企業在激烈的市場競爭中贏得先機並得到更高的回報。github
經過AgileEAS.NET SOA 中間件平臺官方網站最新下載頁面進行下載:數據庫
能夠選擇經過下載打好的RAR壓縮包,也能夠選擇經過SVN進行下載,一版狀況下咱們對AgileEAS.NET SOA 中間件平臺進行改動和修正以後都會把最新的上傳到SVN傳你們下載,RAR包也會及時的從新打包,可是有是能夠由於某些緣由沒有及時對RAR壓縮包進行更新,因此最新的仍是在SVN上,若是有條件的狀況儘可能經過SVN更新最新版本。併發
下載完成平臺以後,有關於發佈包之中的目錄結構及程序集介紹請參考AgileEAS.NET SOA 中間件平臺 5.2 發佈說明一文。app
運行bin\dotnet目錄之中的EAS.DbInitializer.exe程序,即AgileEAS.NET SOA中間件數據庫初始化工具,數據庫初始化工具會幫助你完成AgileEAS.NET SOA中間件平臺運行所必須的表結構及數據:框架
運行界面以下:分佈式
關於選擇何種數據庫請根據你的喜歡和你的擅長,假設咱們選擇SQL Server(2005/2008),而後進行下一步:ide
咱們選擇建立一個新庫,在新庫上建立AgileEAS.NET SOA 中間件的運行環境:工具
咱們填寫數據庫名稱,而後點「開始建立數據庫」,完成後會有以下提示:
點肯定後返回到以下界面:
咱們點擊完成以後開始AgileEAS.NET SOA中間件平臺的數據庫初始化工做:
數據庫初始化工做包括建立數據庫結構及創建初始化數據,初始化完成後會有完成提示(上圖)。
若是選中了「完成後啓動AgileEAS.NET SOA平臺WinClient運行容器」,則會在初始化數據完成以後,咱們點擊肯定以後啓動AgileEAS.NET SOA中間件平臺WinClient運行容器並以剛初始化完畢的數據庫爲基礎進行運行,以下登陸界面:
界面Administrator(管理員)初始密碼:sa進入AgileEAS.NET SOA 中間件平臺WinClient運行容器:
至此,AgileEAS.NET SOA 中間件平臺的數據庫初始化及直連數據庫環境配置完成。
AgileEAS.NET SOA中間件平臺的系統配置文檔,其核心是AgileEAS.NET SOA中間件平臺IOC框架的配置文件,其中配置了運行環境所依賴的數據庫鏈接、數據訪問、ORM數據存取等相關的組件的動態配置,如下爲本例直接數據庫的配置文件內容:
1: <?xml version="1.0" encoding="utf-8"?>
2: <configuration>
3: <configSections>
4: <section name="eas" type="EAS.ConfigHandler,EAS.MicroKernel" />
5: </configSections>
6: <startup useLegacyV2RuntimeActivationPolicy="true">
7: <supportedRuntime version="v4.0"/>
8: </startup>
9: <eas>
10: <configurations>
11: <item name="Key" value="Value" />
12: </configurations>
13: <objects>
14: <object name="DbProvider" assembly="EAS.Data" type="EAS.Data.Access.SqlClientDbProvider" LifestyleType="Thread">
15: <property name="ConnectionString" type="string" value="Data Source=.;Initial Catalog=eas_demo;User ID=sa;Password=sa1q2w3e4r;Connect Timeout=0" />
16: </object>
17: <object name="DataAccessor" assembly="EAS.Data" type="EAS.Data.Access.DataAccessor" LifestyleType="Thread">
18: <property name="DbProvider" type="object" value="DbProvider"/>
19: <property name="Language" type="object" value="TSqlLanguage"/>
20: </object>
21: <object name="OrmAccessor" assembly="EAS.Data" type="EAS.Data.ORM.OrmAccessor" LifestyleType="Thread">
22: <property name="DataAccessor" type="object" value="DataAccessor"/>
23: </object>
24: <!--查詢語言-->
25: <object name="TSqlLanguage" assembly="EAS.Data" type="EAS.Data.Linq.TSqlLanguage" LifestyleType="Thread"/>
26: <!--服務橋-->
27: <object name="ServiceBridger" assembly="EAS.MicroKernel" type="EAS.Services.DirectServiceBridger" LifestyleType="Singleton" />
28: <!--日誌管理-->
29: <object name="Logger" assembly="EAS.MicroKernel" type="EAS.Loggers.TextLogger" LifestyleType="Singleton" />
30: <!--資源-->
31: <!--<object name="EAS.Explorer.Resource" assembly="EAS.Explorer.Res" type="EAS.Explorer.Res.Resources" LifestyleType="Singleton" />-->
32: </objects>
33: </eas>
34: </configuration>
35:
其中eas/configurations中配置的內容供EAS.Configuration.Config對象進行讀取的一些基本配置,供開發人員在處理系統的一些配置參數時候,在AgileEAS.NET SOA 平臺內部沒有使用。
其中eas/objects中配置的內容供EAS.Objects.ComponentConfig對象進行讀取的IOC框架的對象配置信息,由於AgileEAS.NET SOA中間件平臺在設計時支持多種數據庫系統以及鏈接、分佈式結構,因此係統的主體結果是不會變的,當換不一樣的數據的時候,只須要改變一下IOC之中的數據庫鏈接對象的配置信息就能隨便的切換,一樣,系統在進行直連與分佈式切換的時候,只須要經過修改配置文件就能夠達到這樣的目錄。
本例的配置文件之中,如下配置內容,定義了系統使用的數據庫鏈接對象爲EAS.Data.Access.SqlClientDbProvider,即爲SQLServer的鏈接:
1: <object name="DbProvider" assembly="EAS.Data" type="EAS.Data.Access.SqlClientDbProvider" LifestyleType="Thread">
2: <property name="ConnectionString" type="string" value="Data Source=.;Initial Catalog=eas_demo;User ID=sa;Password=sa1q2w3e4r;Connect Timeout=0" />
3: </object>
如須要切換其數據庫咱們只須要改變對象「DbProvider」的類庫信息及修改數據庫的鏈接字符串描述,好比作以下修改:
1: <object name="DbProvider" assembly="EAS.Data.Provider" type="EAS.Data.Access.SqliteProvider" LifestyleType="Thread">
2: <property name="ConnectionString" type="string" value="Data Source=..\db\Chat.db;" />
3: </object>
就變成了基於Sqlite數據庫的定義了,固然了,改變數據庫光改編「DbProvider」的定義還不夠,還須要改變一下「DataAccessor」對象的屬性「Language」定義,即須要把如下配置內容:
1: <object name="DataAccessor" assembly="EAS.Data" type="EAS.Data.Access.DataAccessor" LifestyleType="Thread">
2: <property name="DbProvider" type="object" value="DbProvider"/>
3: <property name="Language" type="object" value="TSqlLanguage"/>
4: </object>
5: <!--查詢語言-->
6: <object name="TSqlLanguage" assembly="EAS.Data" type="EAS.Data.Linq.TSqlLanguage" LifestyleType="Thread"/>
改變爲:
1: <object name="DataAccessor" assembly="EAS.Data" type="EAS.Data.Access.DataAccessor" LifestyleType="Thread">
2: <property name="DbProvider" type="object" value="DbProvider"/>
3: <property name="Language" type="object" value="SqliteLanguage"/>
4: </object>
5: <!--Linq查詢語言-->
6: <object name="SqliteLanguage" assembly="EAS.Data.Provider" type="EAS.Data.Linq.SqliteLanguage" LifestyleType="Thread"/>
這樣咱們就把基於SQLServer的數據環境改變爲基於Sqlite數據庫的數據環境了。
另一個很重要的配置是系統是工作於數據庫直聯仍是工做於分佈式,其決定是由「ServiceBridger」對象所決定,直練環境使用以下配置信息:
1: <object name="ServiceBridger" assembly="EAS.MicroKernel" type="EAS.Services.DirectServiceBridger" LifestyleType="Singleton" />
分佈式環使用以下配置:
1: <object name="ServiceBridger" assembly="EAS.Distributed" type="EAS.Distributed.ServiceBridger" LifestyleType="Singleton"/>
固然了,變不是隻改變這一個對象,改變爲分佈式是還須要改變「DataAccessor」、「OrmAccessor」對象的定義,在些就不作一一界面,願意的朋友請使用AgileEAS.NET SOA中間件平臺的配置文件定義工具(EAS.Configure.exe)多試試。
爲了完善、改進和推廣AgileEAS.NET而成立了敏捷軟件工程實驗室,是一家研究、推廣和發展新技術,並致力於提供具備自主知識產權的業務基礎平臺軟件,以及基於業務基礎平臺了開發的管理軟件的專業軟件提供商。主要業務是爲客戶提供軟件企業研發管理解決方案、企業管理軟件開發,以及相關的技術支持,管理及技術諮詢與培訓業務。
AgileEAS.NET平臺自2004年秋呱呱落地一來,我就一直在逐步完善和改進,也被應用於保險、醫療、電子商務、房地產、鐵路、教育等多個應用,但一直都是以我我的在推廣,2010年由於我辭職休息,我就想到把AgileEAS.NET推向市場,讓更多的人使用。
技術團隊成員都是合做多年的老朋友,由於這個平臺是免費的,咱們的營運開支主要靠爲客戶提供諮詢服務所得,咱們都是由於程序員的那種理想與信念堅持,在此我感謝一塊兒奮鬥的朋友和一直支持咱們工做的客戶、朋友。
AgileEAS.NET網站:http://www.agileeas.net
官方博客:http://eastjade.cnblogs.com
github:https://github.com/agilelab/eas
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人
郵件:james@agilelab.cn,mail.james@qq.com,
電話:18629261335。