项目架构搭建之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的更多相关文章

  1. mvc项目架构分享系列之架构搭建初步

    mvc项目架构分享系列之架构搭建初步 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 ...

  2. Asp.net mvc项目架构分享系列之架构搭建初步

    copy to:http://www.cnblogs.com/ben121011/p/5014795.html 项目架构各部分解析 Core Models IDAL MSSQLDAL IBLL BLL ...

  3. Asp.net mvc项目架构分享系列之架构概览

    Asp.net mvc项目架构分享系列之架构概览 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

  4. mvc项目架构分享系列之架构搭建之Infrastructure

    项目架构搭建之Infrastructure的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构 ...

  5. ABP架构学习系列

    ABP实践学习系列 ABP Zero 本地化语言的初始化和扩展 ABP Zero 导航菜单之角色权限 ABP Zero示例项目问题总结  ABP后台服务之作业调度Quartz.NET   ABP架构学 ...

  6. 【目录】mysql 架构篇系列

    随笔分类 - mysql 架构篇系列 mysql 架构篇系列 4 复制架构一主一从搭建(半同步复制) 摘要: 一.概述 在mysql 5.5之前,mysql 的复制是异步操作,主库和从库的数据之间存在 ...

  7. Mvc项目架构分享之项目扩展

    Mvc项目架构分享之项目扩展 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目 ...

  8. mvc项目架构搭建之UI层的搭建

    项目架构搭建之UI层的搭建 Contents 系列一[架构概览] 0.项目简介 1.项目解决方案分层方案 2.所用到的技术 3.项目引用关系 系列二[架构搭建初步] 4.项目架构各部分解析 5.项目创 ...

  9. MVC项目实践,在三层架构下实现SportsStore-01,EF Code First建模、DAL层等

    SportsStore是<精通ASP.NET MVC3框架(第三版)>中演示的MVC项目,在该项目中涵盖了MVC的众多方面,包括:使用DI容器.URL优化.导航.分页.购物车.订单.产品管 ...

随机推荐

  1. [转载]斐讯K2 A2版免TTL刷BREED不死Bootloader

    1:路由器能正常上网,登陆进路由器 (默认密码admin) 2:用浏览器打开这个网址,如果默认ip不是192.168.2.1修改一下.打开后等待即可自动刷入breed. http://192.168. ...

  2. haproxy 配置

    1.环境: 操作系统:CentOS 6.4 haproxy: 1.3.15.10 [下载:http://download.chinaunix.net/download.php?id=25784& ...

  3. 关于castle和Could not find the dialect in the configuration错误

    最近试了试castle,NND,老是报“Could not find the dialect in the configuration”,明明配的没问题,上网搜索所有教程都是这么配的.后来在一国外的网 ...

  4. Android开发常见问题

    1. android模拟机上不能加文件提示read only file system 先:adb shell 后:mount -o remount ,rw /就行不需要附加多余的东西 就上面两行,解决 ...

  5. 读书笔记_Effective_C++_条款四十七:请使用trait classes来表示类型信息

    这一条款主要来讨论模板中迭代器的属性iterator_category,它可以通过类似于vector<int>::iterator::iterator_category的方式来取得. 到这 ...

  6. Xenia and Divisors

    Xenia and Divisors time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  7. Netty5 + HTTPS 练习

    本次以<Netty权威指南>第十章里面的例子为基础修改而来 HttpsFileServerHandler.java package com.jieli.nettytest.httpsfil ...

  8. 析构函数和Dispose的使用区别

    老生常谈的问题了,MSDN也有非常详细的说明但看起来不是很系统.也曾经做过分析,但没有总结下来又忘了,这次整理一下MSDN和网上搜集的一些资料,以备不时只需. 下面是MSDN对这两个函数的建议使用方法 ...

  9. 找工作--Java相关

    Hi 各位 首先自我描述一下,80后程序员,现在在做Eclipse插件开发. 求Java相关职位(Java/Swing/Eclipse Plugin/Python etc), 或者Linux下C相关职 ...

  10. 关于Windows Phone平台音乐播放的的技术调研

    希望看到这篇文章的开发者能提供你们的想法,让我们一起来探讨一款wp平台上面一款能流畅播放.能流畅拖拽进入条.只发一次请求就可以缓存的最好的播放器.希望大家能对我下面遇到的问题作出回答. 现在出了Win ...