您好,登录后才能下订单哦!
本节目录
介绍
分析Abp源码
实现UOW
UOW(全称UnitOfWork)是指工作单元.
在Abp中,工作单元对于仓储和应用服务方法默认开启。并在一次请求中,共享同一个工作单元.
同时在Abp中,不仅支持同一个数据库连接,还支持事务处理.
1.UnitOfWorkRegistrar
![[Architect] Abp 框架原理解析(5) UnitOfWork](https://cache.yisu.com/upload/information/20200310/71/153348.jpg)
2.ComponentRegistered
![[Architect] Abp 框架原理解析(5) UnitOfWork](https://cache.yisu.com/upload/information/20200310/71/153350.jpg)
3.IsConventionalUowClass
![[Architect] Abp 框架原理解析(5) UnitOfWork](https://cache.yisu.com/upload/information/20200310/71/153351.jpg)
4.Intercept
![[Architect] Abp 框架原理解析(5) UnitOfWork](https://cache.yisu.com/upload/information/20200310/71/153353.jpg)
5.PerformSyncUow
 ![[Architect] Abp 框架原理解析(5) UnitOfWork](https://cache.yisu.com/upload/information/20200310/71/153354.jpg)
定义IUnitOfWork
1 2 3 4 5 6 7 8 9 10 11 12  | 
 
 
 
 
 
 
 
 
 
 
  | 
实现uow,在uow中会提供db的创建,这样才能管理到每个db.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  | 
定义与实现仓储层,这里不再做DbProvider.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  | 
定义与实现应用层
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  | 
定义与实现uow拦截器
1 2 3 4 5 6 7 8 9 10 11 12 13 14  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
  | 
定义在IApplicationService与IRepository接口下拦截
1 2 3 4 5 6 7 8  | 
 
 
 
 
 
 
 
  | 
执行
1 2 3 4 5 6 7 8 9 10 11 12 13 14  | 
 
 
 
 
 
 
 
 
 
 
 
 
 
  | 
会自动在application method的结尾调用Complete.
另外也可以在uow上定义option为启用事务.在本例中稍作扩展即可实现.
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。