登录
注册
论坛
共享空间
搜索
帮助
用户名:
密码:
会员
界面
简洁版本
在线
共享社区
编程技巧共享
.NET编程技巧共享
DataRabbit 轻量的数据访问框架(12)-- 将DataRabbit融入架构
帖子标题
编程技巧共享
JAVA编程技巧共享
.NET编程技巧共享
WEB编程相关文章
互联网资源共享社区
商业智能共享
.NET源码共享
JAVA源码共享
开发工具共享
网页资料共享
教学资源共享
娱乐信息共享
精品游戏共享
老猫的理想信息区
技术交流区
业界新闻区
企业招聘
项目供求
广而告之
老猫的理想-共享社区站务区
站务管理
意见投诉
1
/ 1 页
1
跳转
页
查看:
465
DataRabbit 轻量的数据访问框架(12)-- 将DataRabbit融入架构
mikecat
迈克老猫
个人空间
组别:
管理员
性别:
来自:
中国-石家庄
积分:
2235
帖子:
1903
注册:
2007-12-31
2008-06-06 21:34
|
只看楼主
树型
|
收藏
|
小
中
大
1
DataRabbit 轻量的数据访问框架(12)-- 将DataRabbit融入架构
DataRabbit包括三个项目:DataRabbit.Basic、DataRabbit、DataRabbit.Application。它们的层次关系如下:
DataRabbit.Basic提供了一些最基础的元素定义,比如IsmartEntity接口、EntityAttribute特性等。
DataRabbit是DataRabbit框架的核心,所有的数据访问器(Accesser)都在其中定义和实现。
DataRabbit.Application主要是为了方便应用而做的一些封装,如TransactionScope、TransactionScopeFactory等。
通常的三层架构包括:UI层、BL(业务逻辑)层、数据访问层(对应图中的BEM层)。Entity层不属于三层架构(为此我将其称为“侧层”),但是各层之间通过Entity object在来传递数据。所以,UI、BL、BEM都依赖于Entity侧层。
Entity侧层需要引用DataRabbit.Basic程序集来实现其中的IsmartEntity接口以使得Entity具有“Smart”的能力。注意,Entity侧层不需要引用DataRabbit、DataRabbit.Application程序集。
BEM层即通常的数据访问层,由于它需要提供核心的数据访问能力,所以它肯定依赖于DataRabbit程序集,它借助于DataRabbit来实现数据访问。另外,由于BEM通常都需要在事务上下文中执行,所以,它需要使用到DataRabbit.Application中定义的TransactionScope类。
BL层用于开启一个事务、并执行一个完整的业务流程,所以它需要依赖DataRabbit.Application。特别要注意,BL层不需要引用DataRabbit.Basic和DataRabbit程序集。
下图简明地反映了将DataRabbit融入到三层架构后的依赖关系:
我在实践中,要求
严格遵守
上述的依赖关系,不得出现跨层调用或图中未指出的依赖,这对整个系统的结构维护是
非常关键
和有利的。
(插一点题外话,有很多朋友要求给出一个关于使用DataRabbit的完整示例,非常感谢我的朋友getsun已经帮我完成了这件事情,大家可以
到此
下载示例的所有的文档和源码。)
原文出处:
http://www.cnblogs.com/zhuweisky/
金鳞岂是池中物,一遇风云便化龙
发送短消息
查看公共资料
查找该会员全部帖子
UID:
1
精华:
46
威望:
102
金钱:
499.25 元
状态:
离线
<<
上一主题
|
下一主题
>>
1
/ 1 页
1
跳转
页
论坛跳转...
编程技巧共享
JAVA编程技巧共享
.NET编程技巧共享
WEB编程相关文章
互联网资源共享社区
商业智能共享
.NET源码共享
JAVA源码共享
开发工具共享
网页资料共享
教学资源共享
娱乐信息共享
精品游戏共享
老猫的理想信息区
技术交流区
业界新闻区
企业招聘
项目供求
广而告之
老猫的理想-共享社区站务区
站务管理
意见投诉
我的主题
我的帖子
我的精华
我的空间
帖子标题
空间日志
相册标题
作 者
我的主题
我的帖子
我的附件
我的精华
我的空间