This repository has been archived by the owner on May 8, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
沙发,关于 Cap 接入问题建议 #1
Comments
有空的时候,我们讨论一下 |
嗯。你才是大佬,哈哈。。我也就按照你之前指导的,分析了内部dapper和ef core关于事务的提交,修改了内部代码,CAP事务不同数据库、ORM,都要适配,感觉设计不太好。不过我找不到啥办法。 |
看看我后面贴的代码,用反射去执行 flush 方法,使用习惯基本就和平时使用 ORM 差不多了 |
按照大佬的思路,可以不改变CAP的代码基础上,我们可以这样写一个扩展方法。仅安装官方提供的包。
使用demo,完整项目可查看 https://github.com/luoyunchong/DotNetCore.CAP.Provider/tree/master/samples/Sample.RabbitMQ.MySql.FreeSql
|
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
大哥好,你现在这样封装肯定可以。
问题初衷:
如何在外部控制事务提交?
因为提交事务的操作中可能还有其他操作,不是简单 tran.Commit() 就完事。
如果把事务提交权交给 Cap,整个事务就终断。
伪代码如下:
建议:开放 Flush 方法给外部使用
Cap 作者否决了我的意图,不给支持,其实很简单的一个改动。如果每个数据库自己 copy 代码来改比较复杂,建议代码如下:
这样一来就不用为每个数据库去做这个了
The text was updated successfully, but these errors were encountered: