entity-framework - EF Core中具有IsolationLevel的BeginTransaction

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

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

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

DbContext.Database.BeginTransaction(IsolationLevel.Snapshot);


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

最佳答案

EF核心代码完全相同。

DbContext.Database.BeginTransaction(IsolationLevel.Snapshot);


唯一的区别是,在EF Core中,method with isolation level(与其他许多其他方法一样)是一种扩展方法,在RelationalDatabaseFacadeExtensions类中定义,并且重要的是位于Microsoft.EntityFrameworkCore.Relational程序集中。

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

关于entity-framework - EF Core中具有IsolationLevel的BeginTransaction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55208184/

相关文章:

asp.net-mvc - EF 数据库优先 - 向现有模型添加新模型

c# - 多个 Entity Framework 表破坏 WCF

sql - EF Core 检查约束

java - 了解 jpa 锁与事务隔离级别

mysql - 为什么 MySQL InnoDB 可以处理并发更新而 PostgreSQL 不能?

asp.net-mvc - 无法更改该关系,因为在 MVC 4 中一个或多个外键属性不可为 null

c# - 获取具有指定 ID 的行之后按字母顺序排列的行

asp.net - 如何在 ASP.NET Core 2.0 和 EF Core 2.0 中将应用程序设置从项目根目录获取到 IDesignTimeDbContextFactory 实现

c# - 初始数据库迁移 : No database provider has been configured for this DbContext

mysql - MySQL 中的读取提交与可重复读取?