EF Core中具有IsolationLevel的BeginTransaction

时间:2019-03-17 14:32:43

标签: entity-framework entity-framework-core isolation-level

我正在尝试重写旧库以使用EntityFramework Core,但我不知道如何以特定的隔离级别开始事务。

以前,我能够执行以下操作:

{{1}}

EntityFramework Core中的替代实现是什么?

1 个答案:

答案 0 :(得分:3)

EF核心代码完全相同。

DbContext.Database.BeginTransaction(IsolationLevel.Snapshot);

唯一的区别是,method with isolation level(以及其他许多语言)在EF Core中是扩展方法,在RelationalDatabaseFacadeExtensions类中定义,并且重要的是位于{{ 3}}程序集。

因此,如果您有using Microsoft.EntityFrameworkCore;并且看不到它,请添加对Microsoft.EntityFrameworkCore.Relational.dll程序集/程序包的引用。