ASP.NET 分层结构初探
由于刚开始学.NET,不想沉迷于繁杂的控件中,所以一直以来代码都是手写的,分层也是依据自己的经验来进行。目前对于中小项目我一般分为三个层次,五个模块。在这里给大家说一下我的不成熟的分层思想,如果大家觉得我的分层有什么不合理的地方,欢迎提出。
三个层:
DAL - Data Access Layer - 数据访问层
BLL - Business Logic Layer - 业务逻辑层
UIL - User Interface Layer - 用户界面层
五个模块:
SQLServerDAL
- SQLServer 的数据访问模块,主要使用SqlDataReader读出并填充到自定义实体类
当然再建立一个新的模块 AccessDAL 就可以使用Access数据库了
DTO
- Data Transfer Object - 数据传输对象,在把数据封装成实体类在各层之间传输
一方面是为了防止DataList的一些缺点,另一方面可以统一各层之间的数据交互。
PCL
- Public Class Libaray - 公共类库,整个程序需要的一些自定义类库放入该层
BLL
- 不用多说了,业务逻辑层的模块
WEB
- 用户界面层,我一般只制作WEB程序,如果还有Windows程序的话也可以建立新的模块
中小型项目就可以使用这种分层方法,至于大型项目分层会更细一些,不过也是最基本的三个层再细分化而以。本文章是我写的第一篇.NET方面的文章,本人对面对对象的掌握程度有限,所以有些地方所使用的语言未必合适,如果有什么意见欢迎跟我交流。