.NET 4.0中有哪些变化导致TransactionScope升级到DTC的情况发生?

4

有人能详细说明.NET 4中对于TransactionScope升级到DTC的情况做出的更改吗?或者说,一切是否与3.5相同?


你为什么怀疑有更改被做了? - 500 - Internal Server Error
很好的用户名!我怀疑会有一些变化,因为我模糊地记得有人说在4.0版本中有改进(我想是与Sql Server 2005相关的)。 - Suraj
我刚刚偶然看到这个问题,也许你是指像这样的轻量级事务吗?不过自从.NET 4.0以后就不再支持了。 - Menahem
也许吧!我现在记不清了 =) - Suraj
3个回答

1

我找不到任何关于更改的文档(当我自己寻找时,发现了这个帖子),但从经验上看,似乎确实有一些变化。

我们有一个使用TransactionScope的.Net 3.5应用程序,其中包含约100个单元测试。我的团队允许远程办公,我发现无论我做什么,当我通过VPN远程工作时,这些测试都会失败。在本地没有问题。我之前做过的研究表明,在VPN上存在一些DTC问题,但深入挖掘并不值得麻烦。

然而,我们上个月将项目升级到了.Net 4.0,自那以后,我在VPN上对这些测试没有遇到任何问题。可能是我们VPN的变化,我不否认,但至少时间上非常巧合。


0

MSDN 上没有列出这个被更改过,所以我认为它是相同的。


我依稀记得有人说过,在 .net 4 中有一些改进可以避免升级到 DTC。 - Suraj
好的...看起来没有人能提出更改,而且由于MSDN没有列出任何更改,因此必须没有任何更改。悬赏金归你回答第一个! - Suraj
-1:在MSDN中找不到并不意味着没有进行过更改。这个答案绝对没有提供任何有用的信息。 - JotaBe

0
据我所知,没有这样的更改。为什么微软要破坏成千上万使用TransactionScope的项目呢?也许你误解了什么(或者你阅读的来源不准确),因为并非每个数据库管理系统都支持TransactionScope,在这种情况下,TS就变成了分布式事务。
P.S. 对我的英语表示抱歉 :-)

这些项目会如何出现问题?如果 .net 在必要时才升级,那么代码在更多情况下就不会升级。这应该会使现有项目运行得更快,对吧...但不会破坏它们。 - Suraj
我的意思是行为没有任何改变,否则它肯定会破坏向后兼容性。 - Davita

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接