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。