文档介绍:NDolls框架使用说明
框架说明
设计理念
传统的信息系统开发过程中,针对数据库的操作繁琐且容易出错,并可能存在各方面的安全隐患问题。三层架构虽然一定程度上实现了对数据库操作的封装,但在使用过程中对数据库结构的依赖程度过高,一旦数据库结构发生变化,三层的内容都需要不同程度的发生调整,且对不同表之间的关联关系的支持不足。
针对以上问题,提出了NDolls框架,对底层数据库操作的封装。最大程度上减少了对数据库结构的依赖,只需维护对应的实体类即可;并提供多表之间关联关系的级联操作(事务处理)及实体对象的验证配置化等功能。
框架组成
。,封装了各种公共方法,;,提供了支持数据库操作的各种基本操作。
使用准备
;
。
实体类配置
数据库连接配置
在主项目的配置文件(、)的appSettings节中维护ConnctionString即可。如下图所示:
实体类配置
NDolls数据框架中,最为核心的就是实体类,通过对实体类的配置可以实现一系列复杂的数据库操作。
。如下图所示:
、DataField特性、Association特性及Validate特性实现。
Entity特性用于映射实体类对应的数据库表及其主键信息。如下图所示:
DataField特性用于配置实体类中属性与数据库的对应关系,其中包括与数据库对应的字段名及字段类型等。如下图所示:
Association特性主要负责管理实体类的关联关系,并通过配置实现各种级联操作。
【关联关系包括普通关联关系(1对1)、聚合关系(1对N)、组合关系(1对N)。】
【CascadeType枚举类型设置了各种级联操作的类型,包括级联添加、级联修改、级联查询等。】
普通关联关系(1对1)示例,如下图所示:
聚合及组合关系(1对N)示例,如下图所示:
Validate特性设置了对数据库进行修改或添加操作时需要验证的属性字段及验证规则等。
【其中验证规则可使用内置验证规则(见附录一),也可自定义正则表达式的验证规则。】
A:内置规则验证示例,如下图所示:
B:自定义验证规则示例,如下图所示:
使用示例
具体应用功能需添加一下命名空间的引用,如下图所示:
定义Repository功能容器,通过容器即可完成数据库的各种基本操作。Repository的创建可有两种方式实现,通过RepositoryFactory获得对象或直接实例化对象,其中通过RepositoryFactory方式具有容器缓存功能,具有更好的效率。示例如