【Asp.net精品源码栏目提醒】:以下是网学会员为您推荐的Asp.net精品源码-基于.Net2.0的多层架构设计【精品推荐】 - 毕业设计,希望本篇文章对您学习有所帮助。
基于的多层架构设计 在电子商务应用中越来越多的使用多层架构因为基于两层架构的程序结构只适用于规模较小的任务其开发、维护、成本以及在代码重用、灵活性、可维护性等方面都不能让人满意。
一、三层架构 1.概述 使用多层应用程序结构能使用户界面代码和业务逻辑代码分离方便了应用程序中代码的修改具有良好的解耦性。
将业务逻辑集中到一个类库中从而方便了开发和维护。
在数据库数据的操作中避免了代码的重复提高了重用性。
可以随时将组件分离到不同的物理计算机上。
具有灵活的扩展性。
多层构架主要分为表示层、业务层和数据层。
1表示层Presentation Layer。
表示层提供应用程序的用户界面UI在
ASP.NET中页面是UI的表现形式在Windows Form里窗体是主要的表现形式。
表现层是系统与用户沟通的惟一渠道是系统功能的展示。
2业务层Business Logic Layer。
业务层实现应用程序的功能。
在.NET中通常以类库的形式封装系统需要的业务逻辑。
业务逻辑是开发过程当中主要的任务。
3数据访问层Data Access Layer。
数据访问层中包含了与数据存储进行交互的类库。
这些类在功能上和业务逻辑层相互独立。
数据访问层实现所有业务逻辑所需要的数据访问功能。
2.Microsoft .Net2.0 Framework支持多层构架 在.NET 2.0 中出现了一系列的新的控件来支持多层构架。
二、系统开发目标 1.销售流程实现SOP 本文以销售公司为例SOPStandard Operation Procedure即标准作业程序就是将某一事件的标准操作步骤和要求以统一的格式描述出来用来指导和规范日常的工作。
SOP的精髓就是将细节进行量化用更通俗的话来说SOP就是对某一程序中的关键控制点进行细化和量化。
优化企业的销售流程。
量化销售过程当中的每一个关键因素增加了销售过程的可控性。
三、概要设计和业务流程分析 1.系统设计流程 系统开发的流程如下 图1 系统开发流程 首先根据需求分析设计系统总体架构随后设计数据库、设计数据表然后一个一个模块进行开发。
模块的开发采用三层B/S 结构分层的步骤如下设计数据层、建立业务逻辑层、设计表示层。
2.业务流程 为了实现销售流程的SOP首先要对业务流程进行分析 销售公司将作为网络交互的中心每一个用户想使用系统的功能首先必须通过系统的身份验证。
一般情况下销售公司的流程如下 1销售人员获得新的业务机会。
如果新的业务对应的客户在客户关系管理CRM Customer Relationship Management 中不存在销售人员首先要在CRM中添加该客户的信息再创建业务机会。
销售人员会根据和客户的商谈状况随时更改业务机会的状态进行中、失败或者成功等。
2当销售人员在赢得一个业务机会后需要生成销售订单。
虽然销售人员事先已经查看了产品库存情况但某些突发事件可能导致创建销售订单时库存不足。
只有当订单中的产品库存满足要求时创建销售订单的请求才能被发送给财务人员处理。
3财务人员会收到一个手机短信告知他有一个销售订单需要处理同时日程表中自动添加一项新的事务要求他处理这个销售订单。
如果不满足要求则订单被冻结。
销售人员被通知不能提交订单。
当产品库存满足要求时系统会发短信通知销售人员重新提交订单。
3.系统设计 系统架构销售公司在销售流程中销售人员是持有移动设备的可以很方便的携带方便地和公司财务系统、库存管理系统、生产系统获得联系。
财务系统、库存系统、生产系统使用的都是终端。
系统和系统之间可以相互通信。
设计数据层 数据访问逻辑组件代表调用程序提供对数据库执行以下任务的方法 在数据库中创建记录 Create 读取数据库中的记录并把业务实体数据返回给调用程序 Read 使用调用程序提供的修改后的业务实体数据更新数据库中的记录 Use 删除数据库中的记录 Delete 执行上述任务的方法通常称为“CRUD”方法这是由各项任务的首字母组成的一个缩写词。
数据层的实现我们可以采用Microsoft Application Block中的Data Access Block 它提供了封装好了的数据库操作功能实现了包括OracleSQL Server等数据库的操作。
也可以使用一些开源 Open Source 的O/R Mapping的框架如NHibernate等。
表示业务实体每个数据访问逻辑组件都处理一种特定类型的业务实体。
它主要用于表示数据存储中的持久对象。
是对数据库的一个强类型的映射。
这些实体在数据层和业务逻辑层相互独立。
例如在系统中会有Client客户信息表其数据库设计如下 那么它的业务实体的类图就应该如下图它实际上就是Client数据表的一个映射。
业务逻辑层业务逻辑是任务的重点。
因为数据层并没有对业务实体进行逻辑上的处理只是实现了CRUD方法而业务逻辑层则提供对业务实体的逻辑操作这些操作完全取决于企业的业务逻辑。
这一层也是今后工作最容易更改、升级的部分。
表现层本系统采用的是B/S的结构所以在表现层使用
ASP.NET也就是Web页面。
主要考虑的是用户的交互问题即系统应有一个友好的图形界面Microsoft提供给用户丰富的人机交互手段。
用户可以很容易地使用系统。
Microsoft最近推出的Microsoft Ajax原名Atlas提供给开发者方便实现高效交互的实现方法在这种高效的交互下弥补了B/S结构相对C/S结构的弱处加强了用户的交互体验。
四、单元测试 在一个软件项目中需要做多种测试。
有些测试需要用户的参与而有些则需要专门的质量保证小组来进行或者需要其他的昂贵的资源。
为了平衡成本和时间等因素项目中采用了单元测试。
单元测试并不是在这个项目快完成时才进行的而是在设计的过程中就必须进行单元测试。
在.Net中可以由程序员编写单元测试的代码但是容易出错。
为了解决这个问题有一些开源的单元测试软件可以供程序员选择在.Net中比较常用的单元测试软件有NUnit它提供了一套测试框架和一个测试运行程序。
在Microsoft Visual Studio 2005中Visual Studio 2005为开发人员提供了一个全新的测试环境。
开发人员可以很轻松的开始测试编码调试测试编码管理测试用例等。
五、部署和维护 一个软件项目开发完成后需要部署到运行环境当中模块的数量多少和复杂程度就决定了部署的难度。
通常需要确定一个目录结构哪些目录下放置哪些文件这些细节都是在开发中必须定义的运行环境必须严格按照文档来部署。
如果模块数量多、复杂程度高那么每一次的部署的工作量都会很大而且容易出错。
在.Net中仍然有很多提供部署功能的软件产品可以供选择。
比如NAnt它是一个自动构建、部署的工具可以根据用户的定义部署多层结构的系统。
在.Net 2.0中Microsoft .Net Framework 2.0提供了一个叫MSBuild的工具MSBuild 引入了一种新的基于 XML 的项目文件格式这种格式容易理解、易于扩展并且完全受 Microsoft 支持。
MSBuild 项目文件的格式使开发人员能够充分描述哪些项需要生成以及如何利用不同的平台和配置生成这些项。
另外项目文件的格式还使开发人员能够创作可重用的生成规则这些规则可以分解到不同的文件中以便可以在产品内的不同项目之间一致地执行生成。
六、结束语 本文简要介绍了在.Net环境下构建多层结构的一种方法如果读者对本文有任何的问题和建议请发电子邮件与我们联系xiaomeizi74163.com或allenlecngmail.com。
文中源代码下载请访问http://allenlecn.googlepages.com/layerappdemo 参考文献: 1Paul D. Sheriff《设计 .NET 应用程序》 2郝刚等:《
ASP.NET 2.0开发指南》人民邮电出版社2006.5 3龚赤兵:《
ASP.NET 2.0 网站开发实例教程》人民邮电出版社 2006.7 4美Andrew Hunt David Thomas 著陈伟柱陶文 译 《单元测试之道C版:使用NUnit--程序员修炼三部曲》