ABP在其内部实现了工作单元模式,统一地进行事务与连接管理. 其核心就是通过 Castle 的 Dynamic Proxy 进行动态代理,在组件注册的时候进行拦截器注入,拦截到实现了 Unit Of Work 特性的方法进行操作,在执行完方法之后就会关闭掉工作单元. 其整体流程大概如下: 首先 UOW 相关接口.拦截器等通过 IocManager 注入到 Ioc 容器当中. 监听 Ioc 注册事件,并为其添加方法拦截器. 在拦截器内部使用 using 包裹数据库操作方法,使其成为一个工作单元.…