之前公司项目参考 NopCommerce 开发了一套系统,但是不支持 UnitOfWork,最近想开发新的项目,所以就基于原有的基础上又添加 UnitOfWork 支持,由于目前正在逐步完善中,所以可能存在各种问题,这里发出来仅供大家参考。

1、项目结构

  • Uow.Core:系统核心类库,包括接口和基类的定义等;
  • Uow.Data:数据访问类库,包括 UnitOfWork、Repository 相关类和实体类型映射(OR maping)类;
  • Uow.Entities:数据实体类库,包括数据实体定义类;
  • Uow.Repositories:数据仓储类库,提供业务逻辑层访问数据的一些方法;
  • Uow.Services:业务逻辑类库,调用数据仓储访问数据;
  • Uow.Web:应用程序类库,Web 应用程序;
  • Uow.Web.Framework:基础框架类库,封装一些介于业务逻辑和应用程序之间的一些方法和类,如分页控件、依赖注入等。

2、项目规划

后期我会把项目打造成一个基于 Bootstrap 和 angularjs 的后台管理系统,会包括一些日志管理、计划任务、缓存管理、权限管理和 SSO 单点登录等功能,目前正在逐步完善开发中。

3、一些思考

由于个人能力有限,感觉这个项目里 Uow.Repositories 层可有可无,可以合并到 Uow.Services 层里实现,个人觉得每层应该有各自的职责,所以保留了 Uow.Repositories 层。

4、其他说明

这个项目后期会持续开发并且更新,我会尽可能的抽时间来写后面的文章,做更详细的解释,如果您有宝贵的意见和建议,也欢迎指出。

5、下载

GitHub:https://github.com/weisenzcharles/Uow-Framework

基于 EntityFramework、Autofac 的 UnitOfWork 框架(一)相关推荐

  1. 基于 EntityFramework 的数据库主从读写分离架构(1) - 原理概述和基本功能实现...

    回到目录,完整代码请查看(https://github.com/cjw0511/NDF.Infrastructure)中的目录: src\ NDF.Data.EntityFramework\Maste ...

  2. 基于.NET平台常用的框架整理(转)

    分布式缓存框架: Microsoft Velocity:微软自家分布式缓存服务框架. Memcahed:一套分布式的高速缓存系统,目前被许多网站使用以提升网站的访问速度. Redis:是一个高性能的K ...

  3. 基于.NET平台常用的框架整理(收藏)

    自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前想到的先整理于此,如果再想到,就 ...

  4. 基于.NET平台常用的框架整理

    基于.NET平台常用的框架整理 自从学习.NET以来,优雅的编程风格,极度简单的可扩展性,足够强大开发工具,极小的学习曲线,让我对这个平台产生了浓厚的兴趣,在工作和学习中也积累了一些开源的组件,就目前 ...

  5. Sequelize 4.43.0 发布,基于 Nodejs 的异步 ORM 框架

    Sequelize 4.43.0 发布了,Sequelize 是一款基于 Nodejs 的异步 ORM 框架,它同时支持 PostgreSQL.MySQL.SQLite 和 MSSQL 多种数据库,很 ...

  6. 基于消息机制的万能框架

    什么是消息机制 可以理解为:一个物体发出消息,另外一个或几个物体会接收到这条消息并作出相应的处理.这样做的好处就是模块之间相互独立,降低了模块之间的耦合度,每个脚本都可以有收发消息的能力,把模块之间的 ...

  7. 基于thrift的微服务框架

    前一阵开源过一个基于spring-boot的rest微服务框架,今天再来一篇基于thrift的微服务加框,thrift是啥就不多了,大家自行百度或参考我之前介绍thrift的文章, thrift不仅支 ...

  8. android mvvm框架搭建_轻松搭建基于JetPack组件的MVVM框架

    原文链接:轻松搭建基于JetPack组件的MVVM框架 - 掘金 Brick github gitee 介绍 辅助android开发者搭建基于JetPack组件构建MVVM框架的注解处理框架.通过注解 ...

  9. b站弹幕姬python_基于asyncio异步协程框架实现收集B站直播弹幕详细介绍

    本文给大家分享的是基于asyncio 异步协程框架实现收集B站直播弹幕收集系统的简单设计,并附上源码,有需要的小伙伴可以参考下 "> 前言 虽然标题是全站,但目前只做了等级 top 1 ...

  10. 基于Native Client的编程框架

    上面是一个浏览器的架构图,JS引擎+渲染引擎+外壳Shell+内核 4部分构成了浏览器的主体,传统的插件(上图左部)通过NPAPI与浏览器通信,Native Client(上图右部)通过PPAPI与浏 ...

最新文章

  1. hitchhiker部署_Hitchhiker的React Router v4指南:无限远的递归路径!
  2. BZOJ2005 NOI2010 能量采集 欧拉函数
  3. java vector_Java Vector lastElement()方法与示例
  4. Redis在Windows下设置服务启动
  5. C语言和设计模式(装饰模式)
  6. Python标准库 - subprocess
  7. linux下测试权限,linux 文件权限
  8. kali无线wifi密码破解
  9. 常见函数泰勒公式展开(清晰)
  10. laravel5.5 Validator 自定义错误提示语
  11. bgp高防-服务器单线、双线、三线、BGP线路哪个更好?
  12. pymol Windows安装
  13. 【心随意动】20-SIST研一秋季上学期课程总结【补】
  14. 国标服务器GBServerPlatform对接海康摄像头的操作说明
  15. 远程办公实践丨需重视以人为本的员工激励设计
  16. android遥控器适配
  17. (附源码)基于java的校园二手书籍交易平台 毕业设计131558
  18. 架构之美【kubernetes、Prometheus、微服务、LVS负载均衡】
  19. RabbitMQ双节点集群搭建
  20. 积木报表JimuReport跟ureport2对比

热门文章

  1. Atitit 存储方法大总结 目录 1. 存储方式分类 2 1.1. 按照数据分类为 结构化 半结构化 非结构化 2 1.2. 按照内外部可分类 内部存储和外部存储持久化 2 1.3. 按照本地远
  2. Atitit.每周末总结 于每周一计划日程表 流程表 v8 Ver history V8 add stock chk -------------import Stock chk.. 上周遗漏日
  3. Atitit.印章文化 印章的起源历史与发展 v2 r99 .docx
  4. atitit.Servlet2.5 Servlet 3.0 新特性 jsp2.0 jsp2.1 jsp2.2新特性
  5. paip.环境配置整合 ibatis mybatis proxool
  6. paip.c++ 正则表达式的应用跟普通正则表达式的区别以及特别注意点总
  7. 五种开源API网关实现组件对比
  8. (转)暴涨、闪崩、分叉,监管,现在是投资机会?
  9. 三分钟了解云存储网关 使用场景
  10. 【语音识别】基于matlab GUI HMM 0~9数字和汉字语音识别(带面板)【含Matlab源码 1716期】