- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
DrugShop教程解析
利用AgileEAS.NET开发DrugShop入门手册
敏捷软件工程实例室
2013年03月20日
利用AgileEAS平台开发DrugShop入门手册
DrugShop是利用AgileEAS.NET平台进行快速开发的一个经典案例,最早有H.O.T完成,并将系列文章发布在博客园上,旨在给初次使用或者是想利用AgileEAS.NET平台进行快速开发者一个完整的示例。
现在AgileEAS5.0已经发布,平台中对基础功能进行了大量的修改和升级,本文档将利用最新的EAS版本,针对DrugShop进行重构并对重点内容进行详细说明。
基于AgileEAS.NET5.0开发的DrugShop下载地址:(补充)
AgileEAS.NET介绍
AgileEAS.NET应用开发平台,简称EAS.NET,是基于敏捷并行开发思想以及.NET构件技术而开发的一个应用系统快速开发平台,用于帮助中小型软件企业建立一条适合快速变化的开发团队,以达到节省开发成本、缩短开发时间,快速适应市场变化的目的,AgileEAS.NET应用开发平台包含基础类库、资源管理平台、运行容器、开发辅助工具等四大部分,资源管理平台为敏捷并行开发提供了设计、实现、测试等开发过程的并行,基于AgileEAS.NET平台的应用系统的各个业务功能子系统,在系统体系结构设计的过程中被设计成各个原子功能模块,各个子功能模块按照业务功能组织成单独的程序集文件,各子系统开发完成后,由AgileEAS.NET资源管理平台进行统一的集成部署。
最新AgileEAS.NET版本为5.0,下载地址:(补充)
开发环境配置
下载完成的DrugShop代码组织结构如下:
图1
还原AgileEAS.NET所需数据库
新建一个名称为DrugShop的数据库,然后将Data文件夹下的备份文件还原到刚才新建的DrugShop数据库中,本数据库里包含了AgileEAS.NET平台所需要的表结构及DrugShop程序的表结构,下面对数据库表结构进行简单说明:
Dbo.DS_打头的表结构为DrugShop所需
Dbo.EAS_打头的表结构为EAS平台权限控制、模块管理所需
Dbo.IM_打头的表结构为EAS自带的IM工具所需
Dbo.SOA_打头的表结构为(补充)
Dbo.WEB_打头的表结构为(补充)
Dbo.WF_打头的表结构为EAS工作流所需
浏览生成的DrugShop可执行文件
打开Bin\DotNet4.0目录,这里是AgileEAS.NET平台所需程序集及DrugShop生成的程序集目录。具体工具使用介绍如下图:
图2
在打开DrugShop.Main.exe之前,开发者首先需要检查DrugShop的配置文件--DrugShop.Main.exe.config中的数据库连接字符串是否正确。
默认字符串为连接本机,采用window认证方式。
图3
在确认连接字符串无误的情况下打开DrugShop.Main.exe,这就是我们利用AgileEAS.NET平台构建的DrugShop的可执行文件,用户可以通过用户名0001或者0002,密码sa进入DrugShop主界面。
左侧的导航栏就是DrugShop的所有模块,开发者可自行浏览其功能。关于DrugShop的项目说明和需求分析请看H.O.T发布在博客园上的系列文章。
图4
看到了这么多的模块,那么到底是如何利用AgileEAS.NET快速开发?AgileEAS.NET又是如何组织这些模块,如何分配不同的权限来使用这些模块呢?
DrugShop源代码分析
在DrugShop-Src目录下找到DrugShop的解决方案
图5
DrugShop.Entities程序集分析
以PIn.cs为例,该实体对应了数据库中的表DS_PIN,用来记录药品入库记录。PIn.cs的代码如下:
/// summary
/// 实体对象 PIn(采购入库)
/// /summary
public partial class PIn: DataEntityPIn
{
}
此类通过修饰符partial描述,他的另一部分代码保存在Generat文件夹下,文件名为PIn.Generator.cs。
此类标记了SerializableAttribute,说明此类可以被序列化,并且可以作为参数在分布式环境下传递。TableAttribute接受一个参数,用来对应数据库的表名。PIn类继承于DataEntityPIn,此类也就拥有了orm的所有功能,开发者可以对PIn的事例进行如下操作:pin.Insert(),pin.Updat
文档评论(0)