RelationalTransaction 类

定义

针对数据库的事务。

public class RelationalTransaction : IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<System.Data.Common.DbTransaction>, Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction
public class RelationalTransaction : IAsyncDisposable, IDisposable, Microsoft.EntityFrameworkCore.Infrastructure.IInfrastructure<System.Data.Common.DbTransaction>, Microsoft.EntityFrameworkCore.Storage.IDbContextTransaction
type RelationalTransaction = class
    interface IDbContextTransaction
    interface IDisposable
    interface IInfrastructure<DbTransaction>
type RelationalTransaction = class
    interface IDbContextTransaction
    interface IDisposable
    interface IAsyncDisposable
    interface IInfrastructure<DbTransaction>
Public Class RelationalTransaction
Implements IDbContextTransaction, IDisposable, IInfrastructure(Of DbTransaction)
Public Class RelationalTransaction
Implements IAsyncDisposable, IDbContextTransaction, IDisposable, IInfrastructure(Of DbTransaction)
继承
RelationalTransaction
实现

注解

此类的实例通常是从 BeginTransaction() 中获取的,它不设计为在应用程序代码中直接构造。

有关详细信息和示例,请参阅 EF Core 中的事务

构造函数

RelationalTransaction(IRelationalConnection, DbTransaction, Guid, IDiagnosticsLogger<DbLoggerCategory.Database.Transaction>, Boolean)

初始化 RelationalTransaction 类的新实例。

RelationalTransaction(IRelationalConnection, DbTransaction, Guid, IDiagnosticsLogger<DbLoggerCategory.Database.Transaction>, Boolean, ISqlGenerationHelper)

初始化 RelationalTransaction 类的新实例。

RelationalTransaction(IRelationalConnection, DbTransaction, IDiagnosticsLogger<DbLoggerCategory.Database.Transaction>, Boolean)

初始化 RelationalTransaction 类的新实例。

RelationalTransaction(IRelationalConnection, DbTransaction, ILogger, Boolean)

初始化 RelationalTransaction 类的新实例。

属性

Connection

连接。

Logger

记录器。

SupportsSavepoints

获取一个值,该值指示此 IDbContextTransaction 实例是否支持数据库保存点。 如果为 false,则 CreateSavepointAsync(String, CancellationToken)RollbackToSavepointAsync(String, CancellationToken)ReleaseSavepointAsync(String, CancellationToken) 方法及其同步对应项应引发 NotSupportedException

TransactionId

一个相关 ID,允许跨多个数据库调用标识和关联此事务。

方法

ClearTransaction()

从连接中删除基础事务

ClearTransactionAsync(CancellationToken)

从连接中删除基础事务

Commit()

提交对当前事务中的数据库所做的所有更改。

CommitAsync(CancellationToken)

异步提交对当前事务中的数据库所做的所有更改。

CreateSavepoint(String)

在事务中创建保存点。 这样,在建立保存点后执行的所有命令都将被回滚,并将事务状态还原到保存点时的状态。

CreateSavepointAsync(String, CancellationToken)

在事务中创建保存点。 这样,在建立保存点后执行的所有命令都将被回滚,并将事务状态还原到保存点时的状态。

Dispose()

执行与释放或重置非托管资源关联的应用程序定义的任务。

DisposeAsync()

执行与释放或重置非托管资源关联的应用程序定义的任务。

GetCreateSavepointSql(String)

在支持事务保存点的提供程序中实现时,此方法应返回一个 SQL 语句,该语句创建具有给定名称的保存点。

GetReleaseSavepointSql(String)

在支持事务保存点的提供程序中实现时,此方法应返回一个 SQL 语句,该语句释放具有给定名称的保存点。

如果 savepoint 版本不受支持, ReleaseSavepoint(String)ReleaseSavepointAsync(String, CancellationToken) 则应重写以不执行任何操作。

GetRollbackToSavepointSql(String)

在支持事务保存点的提供程序中实现时,此方法应返回一个 SQL 语句,该语句回滚具有给定名称的保存点。

ReleaseSavepoint(String)

销毁以前在当前事务中定义的保存点。 这允许系统在事务结束之前回收一些资源。

ReleaseSavepointAsync(String, CancellationToken)

销毁以前在当前事务中定义的保存点。 这允许系统在事务结束之前回收一些资源。

Rollback()

放弃对当前事务中的数据库所做的所有更改。

RollbackAsync(CancellationToken)

异步放弃对当前事务中数据库所做的所有更改。

RollbackToSavepoint(String)

回滚在建立指定保存点后执行的所有命令。

RollbackToSavepointAsync(String, CancellationToken)

回滚在建立指定保存点后执行的所有命令。

显式接口实现

IInfrastructure<DbTransaction>.Instance

针对数据库的事务。

扩展方法

GetInfrastructure<T>(IInfrastructure<T>)

从使用 IInfrastructure<T>隐藏的属性中获取值。

此方法通常由数据库提供程序 (和其他扩展) 使用。 它通常不在应用程序代码中使用。

GetDbTransaction(IDbContextTransaction)

获取给定事务的基础 DbTransaction 。 如果目标数据库不是使用 DbTransaction的关系数据库,则引发 。

适用于