gpt4 book ai didi

asp.net - TransactionScope 是否需要开启 DTC 服务?

转载 作者:行者123 更新时间:2023-12-02 10:00:09 24 4
gpt4 key购买 nike

据我所知,为了在.NET 中使用 TransactionScope,您需要运行 Windows 中的分布式事务协调器服务。我已关闭该服务,并且我的应用程序似乎运行相同并且回滚事务没有问题。

我错过了什么吗? 它如何工作?我正在运行 Windows 7 并在 VisualStudio 2010 上运行 Web 应用程序。

最佳答案

更现代的 Windows 版本在内核中具有迷你 DTC 版本。它不是分布式的,但使用相同的 API - 但它只能处理每个事务范围的一个资源。

TransactionScope 在开始时使用它,然后在添加第二个资源时将事务“提升”到真正的 DTC(在您的情况下,资源是数据库连接)。因此,只要您的用例很简单,您就可以避免 DTC 分布式部分的(高)开销,并且可以在不运行服务的情况下工作。

有关内核事务管理器的更多信息可以在 http://en.wikipedia.org/wiki/Kernel_Transaction_Manager 找到。

MS 添加它也是因为 NTFS 具有事务性,并且它需要确保 DTC 可用。

http://www.codeguru.com/cpp/article.php/c18309/

关于asp.net - TransactionScope 是否需要开启 DTC 服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9075095/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com