Csharp/C#教程:Transactionscope或IDbTransaction分享


Transactionscope或IDbTransaction

编辑:我只访问1个数据库,但正在创建DTC事务。 我可以在DTC事务列表GUI(组件服务插件)中看到它。 为什么是这样?

我需要对1个数据库执行一个事务(几个插入命令)。

我应该使用TransactionScope还是IDbTransaction(connection.BeginTransaction)?

TransactionScope似乎更新……但是它应该只用于两阶段提交吗?

谢谢

如果TransactionScope检测到多个连接,它将仅升级到分布式事务。 这意味着TransactionScope与本地事务的BeginTransaction一样轻量级,而TransactionScope更容易使用。

只要您使用单个连接并且在TransactionScope期间不关闭并重新打开,它就不应该升级到分布式事务。 如果您的计算机上没有运行DTC服务,它会在尝试升级时抛出exception。 如果DTC正在运行,除了稍微停顿之外,您将不再是促销活动的明智之举。

在绝大多数情况下,TransactionScope使用起来要好得多,特别是与“使用”块一起使用时。

但是,如果使用SQL Server 2000,请注意它。它与TransactionScope不兼容,并且将始终升级到分布式事务。

有关详细信息,请参阅此链接 。

上述就是C#学习教程:Transactionscope或IDbTransaction分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1014410.html

(0)
上一篇 2021年12月30日
下一篇 2021年12月30日

精彩推荐