首页 > 代码库 > Entity framework调用存储过程,事务问题

Entity framework调用存储过程,事务问题

问题描述

Entity framework 调用存储过程,使用database first生成的方法和db.database.ExecuteSqlCommand调用,都产生异常:无法执行该操作,因为链接服务器 "xxxxx" 的 OLE DB 访问接口 "SQLNCLI" 无法启动分布式事务 该伙伴事务管理器已经禁止了它对远程/网络事务的支持

问题原因

被调方法本身都启用了事务,而存储过程中包含了链接服务器和事务


解决方案

db.database.ExecuteSqlCommand方法第一个参数使用:TransactionalBehavior.DoNotEnsureTransaction,不使用事务调用

Entity framework调用存储过程,事务问题