mvc项目架构分享系列之架构搭建之Repository和Service
项目架构搭建之Repository和Service的搭建
Contents
系列一【架构概览】
0.项目简介
1.项目解决方案分层方案
2.所用到的技术
3.项目引用关系
系列二【架构搭建初步】
4.项目架构各部分解析
5.项目创建
系列三 【Infrastructure搭建】
6.项目架构搭建之Core搭建
7.项目架构搭建之Models搭建
系列四 【Repository和Service的搭建】
8.项目架构搭建之IDAL搭建
9.项目架构搭建之MSSQLDAL搭建
10.项目架构搭建之IBLL搭建
11.项目架构搭建之BLL搭建
系列五 【UI搭建】
12.WebHelper搭建
13.Web搭建
14.AdminLogic搭建
系列六 【项目扩展】
15.新增Model的处理
8.项目架构搭建之IDAL搭建
- IBaseDAL 定义常用的增删改查
- IDALCollection 定义各个Model对应的接口以及接口特殊方法
在定义接口时的注意事项:
- 必须集成IBaseDAL父接口
- IDbContextFactory 定义获取EF上下文的方法
- IDbSession 定义各个Model对应的数据接口
- IDbSessionFactory 定义获取数据仓储接口的方法
9.项目架构搭建之MSSQLDAL搭建
- BaseDAL 实现IDAL层IBaseDAL 接口中定义的方法
- DALCollection 定义各个model对应的类并实现IDAL层IDALCollection中各个Model对应的接口以及接口特殊方法
在定义类时的注意事项:
- 必须集成BaseDAL基类
- 必须实现IDAL层对应的接口
示例:

- DbContextFactory 实现IDAL层IDbContextFactory 接口中定义的获取EF上下文方法
利用dotNet自带的缓存策略,System.Runtime.Remoting.Messaging.CallContext 实现缓存以减少new的过程,提高数据操作效率。

- DbSession 定义各个Model对应的数据接口并实例化

- DbSessionFactory 实现IDAL层IDbContextFactory 接口中的获取数据仓储接口的方法
数据缓存使用以上提到的缓存策略

10.项目架构搭建之IBLL搭建
- IBaseBLL 定义常用的增删改查,以及特殊的方法和属性
- IBLLCollection 定义各个Model对应的接口以及接口特殊方法
在定义接口时的注意事项:
- 必须集成IBaseBLL父接口
- IBLLSession 定义各个Model对应的service接口
- IBLLSessionFactory 定义获取Service仓储接口的方法
11.项目架构搭建之BLL搭建
- BaseBLL 实现IBLL层IBaseBLL 接口中定义的方法
- BLLCollection 定义各个model对应的类并实现IBLL层IBLLCollection中各个Model对应的接口以及接口特殊方法
在定义类时的注意事项:
- 必须集成BaseBLL基类
- 必须实现IBLL层对应的接口
示例:

- BLLSession 定义各个Model对应的service接口并实例化

- BLLSessionFactory 实现IBLL层IBLLSessionFactory 接口中的获取数据仓储接口的方法

- DbSessionFactory 实现IDAL层IDbSessionFactory 接口中的获取数据仓储接口的方法

mvc项目架构分享系列之架构搭建之Repository和Service的更多相关文章
- mvc项目架构分享系列之架构搭建初步
mvc项目架构分享系列之架构搭建初步 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 ...
- Asp.net mvc项目架构分享系列之架构搭建初步
copy to:http://www.cnblogs.com/ben121011/p/5014795.html 项目架构各部分解析 Core Models IDAL MSSQLDAL IBLL BLL ...
- Asp.net mvc项目架构分享系列之架构概览
Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...
- mvc项目架构分享系列之架构搭建之Infrastructure
项目架构搭建之Infrastructure的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...
- ABP架构学习系列
ABP实践学习系列 ABP Zero 本地化语言的初始化和扩展 ABP Zero 导航菜单之角色权限 ABP Zero示例项目问题总结 ABP后台服务之作业调度Quartz.NET ABP架构学 ...
- 【目录】mysql 架构篇系列
随笔分类 - mysql 架构篇系列 mysql 架构篇系列 4 复制架构一主一从搭建(半同步复制) 摘要: 一.概述 在mysql 5.5之前,mysql 的复制是异步操作,主库和从库的数据之间存在 ...
- Mvc项目架构分享之项目扩展
Mvc项目架构分享之项目扩展 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目 ...
- mvc项目架构搭建之UI层的搭建
项目架构搭建之UI层的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目创 ...
- MVC项目实践,在三层架构下实现SportsStore-01,EF Code First建模、DAL层等
SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...
随机推荐
- POJ 1650 Integer Approximation
Integer Approximation Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5081 Accepted: ...
- BAPI 调用相当于BAPI_TRANSACTION_COMMIT 的方法
为什么.net调用SAP的BAPI接口需要调用BAPI_TRANSACTION_COMMIT呢?首先得明白BAPI_TRANSACTION_COMMIT这个BAPI的作用.它功劳很大,在SAP里面很多 ...
- ubuntu 搭建 samba 服务器
. sudo apt-get install samba samba-common . sudo vi /etc/samba/smb.conf [alair's share] path = /home ...
- IOS8Preview-xCode_6
IOS8Preview-xCode_6 what's new What's new in xCode 6 Xcode 6 introduces a radically new way to desig ...
- easyui filebox 浏览图片
<img id="image1"/> <input id="f1" class="easyui-filebox" name ...
- Lambda动态创建
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- Lua中调用C函数
Lua利用一个虚拟的堆栈来给C传递值或从C获取值.每当Lua调用C函数,都会获得一个新的堆栈,该堆栈初始包含所有的调用C函数所需要的参数值(Lua传给C函数的调用实参),并且C函数执行完毕后,会把返回 ...
- 一个android应用开发的感悟
对于客户端的开发,以我个人现在的水准,很难进行一个系统的讲解,只能分享下遇到的几个问题点好了! 1:对于tabhost的使用,这个东西真的是过时了:第一个版本,我是用的tabhost确实是很难用,不过 ...
- 更加优雅地搭建SSH框架(使用java配置)
时代在不断进步,大量基于xml的配置所带来的弊端也显而易见,在XML配置和直接注解式配置之外还有一种有趣的选择方式-JavaConfig,它是在Spring 3.0开始从一个独立的项目并入到Sprin ...
- jQuery实现表格拖动排序
原理就是利用mousedown.mouseover.mouseup事件实现拖动,并用Ajax实现保存结果. JS代码如下: <!--题目调序功能--> <script type=&q ...