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优化.导航.分页.购物车.订单.产品管 ...
随机推荐
- 由于无法创建应用程序域,因此未能执行请求。错误: 0x80070002 系统找不到指定的文件
前两天安装了一堆补丁后突然发现,原本正常使用了一年的应用系统打不开了,到事件日志中发现有.net framewok 2.0的补丁安装失败的日志,于从从重装补丁开始.到重新注册.net框架,再到所有.n ...
- Git使用总结
一.Git的特性 Speed 速度(git是用c语言写的.一般都是提交到本地) Simple design Strong support for non-linear development (tho ...
- CSS之边框覆盖
今天想做一个淘宝导航来练练手,遇到了边框覆盖的问题.如下图: li的红色边框盖不住该灰色边框.后来问经验人士告诉我,这种边框覆盖是会出现无法100%保证正常的情况,遂得到如下3中解决方案: 1.以后遇 ...
- KIS旗舰版常用数据表
select * from IC_Web2ERPOrders --网上订单 FOrderStatus 14--已发货,6--待发货,2--待配货,1--未审核 (审核后变为2,进入待配货)sele ...
- [转]查看手机已经记住的WIFI密码
有时用过wifi后记住密码了,但再想知道wifi密码是多少,怎么办呢.下面的方法为你解决这样的问题. 1.手机必须取得root权限. 2.用RE管理器或es文件浏览器进入data/misc/wifi, ...
- 浅析Objective-C的copy
一直对NSObject的copy方法似懂非懂,今天工作做完了,整理一下 深复制和浅复制是什么在这里就不赘述 今天主要分三种类型对copy进行探讨:系统非容器类对象.系统容器类对象和自定义对象 系统非容 ...
- glassfish服务器默认的网页所在的位置
http://localhost:8080/ 默认打开的网页所在的位置 E:/glassfish-4.1/glassfish/domains/domain1/docroot/index.html
- js时间对象格式化 format(转载)
/** * 时间对象的格式化 */ Date.prototype.format = function(format){ /* * format="yyyy-MM-dd hh:mm:ss&qu ...
- bootstrap精简教程
bootstrap 的学习非常简单,并且它所提供的样式又非常精美.只要稍微简单的学习就可以制作出漂亮的页面. bootstrap中文网:http://v3.bootcss.com/ bootstrap ...
- python之IO多路复用
在python的网络编程里,socetserver是个重要的内置模块,其在内部其实就是利用了I/O多路复用.多线程和多进程技术,实现了并发通信.与多进程和多线程相比,I/O多路复用的系统开销小,系统不 ...