三层架构

三层架构,分别是   数据交换层DAL,业务逻辑层BLL,界面层UI。在.net项目中以项目(程序集)的形式表现。数据库放的每一个表,在各个层中都对应一个类。用过好久之后,感觉没有最初感觉的那么高大上。但的确很方便。构建三层架构的时候,因为每张表的基础逻辑都差不多、重复性工作太多。所以在构建三层架构初始,建议写一个代码生成器,(生成器这东西,逻辑上就是拼字符串。)当然,使用起来最舒服的还是别人家写的。

推荐,【动软三层代码生成器】,算是个半开源的工具,可以自定义的哦?这一点很关键的。

      1. Model 项目

      把数据库中的表,以实体类的形式保存在项目中。

技术问题:1. 对于数据库中的可空类型,使用 int?   bool?......等数据进行接收。

                       2 . 对于双向绑定。的数据问题。。(未记录)。

      2. DAL     数据交换层概要

      项目中对数据库的操作,全部封装到这个程序集中。

      一般主要包括数据表的,Insert( ) 、DeleteById( )、 Update( )、 GetById( )、  GetList( )方法。

技术问题:

1. 操作数据库主要使用SQLHelper类来操作。

                      2. 理论上来说,除DAL层外,其他项目中不能出现任何与数据库相关的元素(例如:ADO.NET)

DAL层中方法的返回值,一般为Model或者,List<Model>等于数据库无关的类型。

                      3. 处理数据库中的空值。封装一个ToDBNull(Object value),和FromDBNull(Object value)

     3. BLL       业务逻辑层概要

     无论是数据库中的数据,还是UI上的数据,如果都需要一定的判断,转换,和基于业务上的处理,都需要BLL层的支持。

     4. UI         层概要
     用户交互的界面,用于显示具体的数据给用户。

技术问题:

1. UI的数据,可以使用两种方式赋值。控件赋值  和  数据绑定。

                     2. 数据绑定的绑定方式 BindingModel   =     Towway  Oneway   OneTime。双向绑定时需要实体类实现一个接口。

posted @ 2014-11-26 19:10  大黑兔  阅读(414)  评论(0编辑  收藏  举报