基于ASP.NET三层架构应用系统解析

来源 :中国新通信 | 被引量 : 0次 | 上传用户:lz3163
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】随着ASP.NET应用的普及,越来越多的软件系统采用ASP.NET技术。然而很多中小WEB应用都采用不分层的方式进行开发,导致了代码的混乱。为日后的维护工作带来了极大的困难。本文阐述了ASP.NET三层架构的优点和如何构建三层架构。
  【关键词】表示层(PL)业务逻辑层(BLL)实体(Entity)数据访问层(DAL)
  一、三层架构概述
  所谓三层架构中的三层,指的是表示层(PL)、业务逻辑层(BLL)和数据访问层(DAL):数据访问项目执行从数据库(或其他数据服务)获取数据或向数据库发送数据的功能。在分布式应用程序结构中,相应功能使用ADO. NET数据适配器和SQL服务器存储过程来完成。业务规则项目包含业务对象本身以及应用于它们的规则。这也是主要业务对象所在的位置。它们实现业务实体或系统对象。系统的业务规则将在这些对象中编码,尽管部分业务规则可能实际上已在数据库的存储过程和触发器中进行了编码。
  用户界面项目是指在应用程序中实现的客户端。在分布式应用程序结构中,用户服务可以是Web客户端或Windows客户端,这具体取决于特定的应用程序。例如,在开发Web应用程序时,可能需要提供具有标准Windows用户界面或Web用户界面。
  二、三层架构优点
  在三层架构的软件系统中,表示层(PL)即用户界面(UI)、业务逻辑层(BLL)和数据访问层(DAL)之间是相对独立的。相邻的两层之间产生一定的联系(即耦合),隔层是不会产生影响的。这样当任何一层发生改变的时候,只需做简单的调整就可以了。降低了变更所带来的影响,为后续的系统维护工作提供了便利。
  三、三层架构实例
  下面将仍以“用户登陆”为例,讲述如何搭建三层架构的应用系统。
  (一)在VS2008中搭建解决方案“MySchoolPro”。(1)在VS2008中建立名为“MySchoolPro”的解决方案;(2)建立名为“MySchool”的WEB项目;(3)建立名为“DAL”的类库项目;(4)建立名为“BLL”的类库项目;(5)在“BLL”项目中添加“DAL”引用;(6)在“MySchool”中添加“BLL”引用。
  (二)在“DAL”中加入微软的ADO封装类“SqlHelper”;SqlHelper是一个基于.NET Framework的数据库操作组件。组件中包含数据库操作方法。
  (三)添加实体类User。实体类是对业务实体的抽象、封装,它与数据库中的实体表相对应。实体类User中不但包含了构造函数、私有成员和属性,也包含了与该实体相关的行为。在没有实体类的情况下,数据的传输只能依靠DataSet。然而在DataSet中数据是以关系数据的形式存在,不具备OO的特点。对DataSet操作的代码往往散落在BLL或UI之中,容易造成代码的混乱。添加实体类之后各层之间都依靠实体来进行消息传递,从而弥补了上述的不足。
  下面将实体类(User)加入到解决方案“MySchoolPro”中:(1)在“MySchoolPro”中建立名为“Model”的类库项目;(2)在“Model”中添加“DAL”引用;(3)在“MySchool”中添加“Model”引用;(4)在“Model”中加入User实体类(代码同上)。
  实体贯穿整个系统,成为系统的业务基础。这里需要加以区别的是业务实体层(Model)和业务逻辑层(BLL)之间的关系。业务实体层(Model)体现了业务域在系统的抽象;业务逻辑层(BLL)则实现为复杂逻辑提供服务。换句话说,业务逻辑层(BLL)实现了业务实体的组合调用。
  (四)建立登陆页面
  由于“用户登陆”功能仅涉及到用户实体,所以不会在业务逻辑层(BLL)中编码。下面在“MySchool”中建立Login.aspx,用户登录成功后跳转到Default.aspx;否则提示用户名密码错误。
  四、结语
  三层架构中包括:表示层(UI)、业务逻辑层(BLL)、数据访问层(DAL),每层功能明确、相对独立,层与层之间相互隔离,体现了“低耦合、高内聚”的设计思想。
  参考文献
  [1]梁立新著.项目实践精解·ASP.NET应用开发:基于ASP.NET、C#和ADO.NET的三层架构案例分析.电子工业出版社,2010年
  [2] Matthew MacDonald著. ASP.NET高级程序设计.人民邮电出版社,2011年
  [3] Christian Thilmany. NET模式:架构设计与过程.中国电力出版社
  [4] Jeffrey Richter. Microsoft. NET框架程序设计.清华大学出版社
  [5] Martin L. Shoemaker UML实战教程.清华大学出版社
其他文献
期刊
分布式电源的大量接入和电动汽车的快速普及成为现今配电网面临的双重挑战,同时当前配电网普遍存在闭环设计、开环运行的现象,导致配电网内馈线功率失衡现象严重。为解决上述
【摘要】程控交换机的使用必须在一个相对封闭的环境中进行,程控交换机是一个单位总机的主要设备,因为日夜不停地持续工作的工作特性决定了其对设备的安全性能有着很高的要求,对数据传输的可靠性也需要达到一定的要求。基于这两项特点,对其工作环境的选择上需要做全面的思考和选择,为提供安全、稳定、可靠的工作环境进行仔细的研究和总结,本文以此为主题展开详细讨论。  【关键词】程安控交换机环境要求安全  程控交换机是
【摘要】光缆通信凭借其容量大、抗干扰能力强等优势在通信技术中日益广泛应用,光缆通信工程的质量成为影响日后通信性能的重要方面,那么在光缆通信工程施工前、施工中、施工后都应注重提高工程质量。  【关键词】光缆质量光缆接续质量光纤通信工程  随着通信技术的发展,光缆依靠其独特的保密性、大容量、传输中继距离远、抗干扰抗腐蚀能力强并且重量轻易于维护等特性目前已经被广泛的应用于通信领域。如何提高光缆通信工程的
日前法国名牌Cabasse推出全新EOLE 2套装剧院喇叭.EOLE 2延续了Cabasse的旗舰La Sphere“球体扬声器”的同轴点音源设计概念.配合纤巧高挑的喇叭支架.兼顾了高品质的声音和艺术
自Müller(1774)正式建立属,经过186年,Zilch(1959-1960)共归纳陆生软体动物有1091个属,其中,约有58.4%的属建立于1870~1929年间,以后逐渐减少。现估计全世界陆生软体动物有35
目的分析广东省36月龄以下婴幼儿喂养指数,应用喂养指数评估相关喂养行为。方法采用多阶段随机抽样的方法抽取广东省深圳市南山区(大城市)、肇庆市端州区(中小城市)、开平市
来自以色列的著名音响品牌Morel(摩雷),以技术精湛与对声音重放的贡献而得到玩家与市场的高度认可。尽管该品牌有不少的大件作品,然而,凭借着深厚的技术积累与单元、箱体开发技术,
目的:应用检测脏腑和经络功能的方法,评价颅骶技术的疗效和作用方式。方法:对15例健康青年志愿者行颅骶技术治疗,用经络检测仪分别测量治疗前后脏腑和经络功能的变化。结果:测定
脑梗死是一种严重的动脉硬化血栓形成并发症,其致死率和致残率居各种血栓并发症之首.长期以来,有关脑梗死发病机制的研究一直是被广泛关注的问题.