gpt4 book ai didi

.net - 为什么我的 TransactionScope 在 EF Code First 应用程序中使用时尝试使用 MSDTC?

转载 作者:行者123 更新时间:2023-12-02 17:23:57 24 4
gpt4 key购买 nike

我刚刚针对 SQL 2010 Express 本地数据库向使用 EF 4.3 Code First 的 MVC3 应用程序介绍了 TransactionScope 的使用。当我在范围内尝试 SaveChanges 时,收到“提供程序无法打开”通知,并出现有关缺少 MSDTC 的内部异常。据我所知,只有当我使用多个连接字符串时才会发生这种情况。我只使用过与一个数据库的连接,应用程序中只有 1 个字符串。不过,我确实使用了多个 DbContext 实例,但在事务范围内只使用了一个实例。

我可以做什么来解决这个问题?

最佳答案

不知道是否与这篇文章类似? How to run two Entity Framework Contexts inside TransactionScope without MSDTC?

解决方法是:

0) 创建可促销事务(取决于 SQL Server 版本?)( http://msdn.microsoft.com/en-us/library/ms172070.aspx )

1) Entity Framework – MSDTC Gotchya ( http://joeknowsdotnet.wordpress.com/2012/07/19/entity-framework-msdtc-gotchya/ )

2) 避免不必要的分布式事务升级 ( http://petermeinl.wordpress.com/2011/03/13/avoiding-unwanted-escalation-to-distributed-transactions/ )

关于.net - 为什么我的 TransactionScope 在 EF Code First 应用程序中使用时尝试使用 MSDTC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11451112/

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