精致和嵌套交易

时间:2014-02-12 00:10:40

标签: .net sql-server transactions transactionscope dapper

使用Dapper方法时,是否可以将嵌套事务指定为IDbTransaction参数?

我想通过Dapper提交一个内部事务,所有数据和相关的锁将被释放,并且只有 可用于外部事务,在提交外部事务之前所有外部锁仍然存在。

查看具体示例:http://technet.microsoft.com/en-us/library/ms189336(v=sql.105).aspx

我正在使用SQL Server 2008,如果有帮助的话。

1 个答案:

答案 0 :(得分:2)

Dapper使用ado.net交易。此外,由于许多ado.net提供程序支持环境事务(TransactionScope),因此通常支持 - 但不需要额外的代码。如果你能用ado.net交易做你想做的事:很好。如果你可以用TSQL做你想做的事:很好 - 只需发出适当的命令。真的,它归结为:你能从ado.net做到吗?

例如,在连接的BeginTransaction连接中尝试使用显式事务的存储过程是值得的。