繁体   English   中英

可以在单个TransactionScope中使用多个Entity Framework数据上下文吗?

[英]Can multiple Entity Framework Data Contexts be used within a single TransactionScope?

我正在尝试使用{}在TransactionScope中使用多个EntityFramework 6 DataContext。

我得到以下异常

mscorlib.dll中发生类型为'System.Data.Entity.Core.EntityException'的第一次机会异常

附加信息:基础提供程序在打开时失败。

内部异常1

分布式事务管理器(MSDTC)的网络访问已被禁用。

请使用组件服务管理工具在MSDTC的安全配置中为网络访问启用DTC。

内部例外2

事务管理器已禁用对远程/网络事务的支持。

(来自HRESULT的异常:0x8004D024)

该代码可以在没有TransactionScope的情况下正常工作。

以下是我需要回答的问题:

将事务应用于同时使用的两个数据上下文的最佳方法是什么? 我究竟做错了什么?

不是EF阻止了您,而是DTC。 当使用两个或多个同时连接到MSSQL时,需要DTC。

请参阅http://msdn.microsoft.com/en-us/library/dd327979.aspx

PS。 MSDTC问题与ADO.NET实体框架中的事务重复

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM