.NET三层架构解析之Model四种设计方式

转载 2015年07月09日 16:07:39

在项目开发的过程中,有时把整个项目分为三层架构,其中包括:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。

  .Net三层架构解析系列文章:

  步步为营.NET三层架构解析之数据库设计

  .NET三层架构解析之SQLHelper设计

  .NET三层架构解析之Model四种设计方式

  在项目开发的过程中,有时把整个项目分为三层架构,其中包括:表示层(UI)、业务逻辑层(BLL)和数据访问层(DAL)。三层的作用分别如下:

  表示层:为用户提供交互操作界面,这一点不论是对于Web还是WinForm都是如此,就是用户界面操作。我们网站展示给用户看的界面。

  业务逻辑层:负责关键业务的处理和数据的传递。复杂的逻辑判断和涉及到数据库的数据验证都需要在此做出处理。根据传入的值返回用户想得到的值,或者处理相关的逻辑。

  数据访问层:见名知意,负责数据库数据的访问。主要为业务逻辑层提供数据,根据传入的值来操作数据库,增、删、改或者其它。

  以下我简单介绍下一个用户管理模块:

  为了整个项目的开发方便,我们在项目中会建几个类库SQLHelper,BLL,DAL,Model和一个Web网站。为了命名清晰,我们可以这样命名这个三个工程(即在解决方案里添加的类库):

  业务逻辑层(BusinessLogicLayer):BLL,命名空间默认设置为BLL

  数据访问层(DataAccessLayer):DAL,命名空间默认设置为DAL

  SQL帮助类:SQLHelper,命名空间默认设置为SQLHelper

  另外我们为了数据传递的方便,通常再添加一个类库,这个类库是贯穿于整个三层架构中的。即实体类。通常命名为Model,命名空间默认值设置为:Models。其中封装的每个类都对应一个实体,通常就是数据库中的一个表。如数据库中的用户表(custom)封装为(custom),将表中的每个字段都封装成共有的属性。

  这样三层架构的搭建就基本完成了。这三层有着非常强的依赖关系:

  表示层 ← 业务逻辑层 ← 数据访问层

  他们之间的数据传递是双向的,并且通常借助实体类传递数据。

  那么三层架构都有哪些优点呢:

  1、易于项目的修改和维护。在项目的开发过程中或者开发后的升级过程中,甚至在项目的移植过程中。这种三层架构是非常方便的。比如项目从Web移植到Form,我们只需要将表示层重新做一遍就可以了。其余两层不用改动,只需添加到现有项目就可以了。如果不采用这种架构,只是将代码写到表示层。那么所有的编码几乎都要重新来了。

  2、易于扩展。在功能的扩展上同样如此,如有功能的添加只需把原有的类库添加方法就可了

  3、易于代码的重用。这一点就不用解释了。

  4、易于分工协作开

  还可以加个接口类库Iinterface, 加入设计模式,使你的代码灵活性更好,质量更高。

作者:spring yang责任编辑:王健楠)

C#中三层架构UI、BLL、DAL、Model实际操作

三层架构分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)再加上实体类库(Model) 转载请注明出自朱朱家园http://blog.csdn.net/zhgl7688 ...
  • eyoonet
  • eyoonet
  • 2016年09月15日 15:50
  • 8581

【.NET】EF框架之三种模式

使用EF之前必须要对EF有个宏观的了解.学习任何一种技术都要像门卫一样问几个问题.       第一,它是谁?       第二,从哪里来?       第三,到哪里去?        默念一遍:不谋...
  • zhuanzhe117
  • zhuanzhe117
  • 2014年11月30日 22:20
  • 25056

架构(三层架构)、框架(MVC)、设计模式三者异同点

架构、框架、设计模式三者关系与异同点、三层架构与MVC的区别——chenchen
  • u010191034
  • u010191034
  • 2014年04月27日 15:05
  • 3304

三层架构(我的理解及详细分析)

三层架构已经学了一段时间,一直想做一个比较完整、比较完美的总结。但是左思右想,不知道如何下笔。都说万事开头难嘛,今天整理了一下凌乱的思路,哎,还是没整理好,想到哪就说到哪吧。   初学者很不理解: 1...
  • hanxuemin12345
  • hanxuemin12345
  • 2013年01月26日 17:13
  • 105792

.NET三层架构:四种Model设计

说到Model设计,我们先谈谈它的作用:   Model又叫实体类,model层里面的一个类对应数据库里面的一张表, 类里面的每一个属性对应表里面的一个字段,每个属性都有自己的 GET 和 SE...
  • wzjemb
  • wzjemb
  • 2013年03月16日 09:51
  • 387

ASP.NET三层架构中MODEL的作用

http://hi.baidu.com/5201413/item/e4e9a7002161bf14cc34ea26 Model又叫实体类,这个东西,大家可能觉得不好分层。包括我以前在内,是这样理...
  • mituan1234567
  • mituan1234567
  • 2014年02月26日 15:26
  • 925

asp.net 三层架构实例 BLL DAL Model

  • 2013年11月11日 19:44
  • 353KB
  • 下载

VB.NET三层架构设计与实现

这几天一直在做VB.NET版的机房收费系统,初次使用了三层架构,“万事开头难”,自己迷迷糊糊的纠结了一天,终于将登录实现了(因为之前看了一个三层架构的讲解视频:小燕雀。大家可以直接去百度视频上观看)。...
  • zhaodandan19910306
  • zhaodandan19910306
  • 2011年03月23日 11:54
  • 1807

ASP.NET 三层架构设计

一、三层概述 三层架构(3-tier application) 通常意义上的三层架构就是将整个业务应用划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。区分层次的目的即为了“高...
  • wujiaqi168
  • wujiaqi168
  • 2014年04月17日 21:13
  • 1118

基于.Net(C#开发)平台的三层框架架构软件的设计与实现

1 软件框架 随着软件复用技术和软件构件化思想的深入研究,现代软件系统的设计也不在是以前的程序=数据结构+算法,而更多的是对开发平台,软件框架的综合研究与设计。信息系统软件框架 是信息系统软...
  • aTian2009
  • aTian2009
  • 2011年11月21日 23:17
  • 2801
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:.NET三层架构解析之Model四种设计方式
举报原因:
原因补充:

(最多只允许输入30个字)