【问题标题】:Transaction handling with TransactionScope使用 TransactionScope 处理事务
【发布时间】:2009-11-05 09:45:28
【问题描述】:

在这篇 MSDN 文章的帮助下,我正在使用 TransactionScope 实现事务 http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx

我只是想确认将 TransactionScope 与 Tableadapter 一起使用时是否有任何问题?

我已经阅读了这篇文章并阅读了一些与此相关的问题,但这篇文章已有 2.5 年的历史 http://blog.falafel.com/2007/04/09/GettingTableAdaptersToParticipateInTransactions.aspx

我希望在最新版本的 .Net Framework 中,问题已得到解决

我使用的是 .Net framework 3.5 版本

谢谢

【问题讨论】:

    标签: c# asp.net transactionscope tableadapter typed-dataset


    【解决方案1】:

    我不认为这篇文章是 100% 正确的。

    如果你连接到多个数据库或通过多个连接连接到单个数据库,事务范围会自动将事务更改为分布式事务。

    文章作者使用的代码生成了多个到数据库的连接。因此它正在尝试使用 MS DTC(分布式事务协调器),如果设置不正确,事务将失败。

    我们在需要事务的任何地方都使用事务范围,无论何时遇到问题都是由于我们的代码或配置造成的。

    【讨论】:

    • 这根据 SQL2005 和 SQL2008 有所不同 - 但 +1 值得牢记。 SQL2008 可以处理第二个连接而无需升级到 MS DTC。
    • @Sohnee,感谢您的评论。切换到 SQL Server 2008 的另一个原因。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-24
    • 1970-01-01
    • 2011-02-11
    • 1970-01-01
    • 2014-02-14
    • 2015-03-10
    • 1970-01-01
    相关资源
    最近更新 更多