Interface IRelationalTransactionManager
- Namespace
- Microsoft.EntityFrameworkCore.Storage
- Assembly
- Microsoft.EntityFrameworkCore.Relational.dll
Creates and manages the current transaction for a relational database.
This type is typically used by database providers (and other extensions). It is generally not used in application code.
The service lifetime is Scoped. This means that each Microsoft.EntityFrameworkCore.DbContext instance will use its own instance of this service. The implementation may depend on other services registered with any lifetime. The implementation does not need to be thread-safe.
public interface IRelationalTransactionManager : IDbContextTransactionManager, IResettableService
Methods
BeginTransaction(IsolationLevel)
Begins a new transaction.
IDbContextTransaction BeginTransaction(IsolationLevel isolationLevel)
Parameters
isolationLevel
IsolationLevelThe isolation level to use for the transaction.
Returns
- IDbContextTransaction
The newly created transaction.
BeginTransactionAsync(IsolationLevel, CancellationToken)
Asynchronously begins a new transaction.
Task<IDbContextTransaction> BeginTransactionAsync(IsolationLevel isolationLevel, CancellationToken cancellationToken = default)
Parameters
isolationLevel
IsolationLevelThe isolation level to use for the transaction.
cancellationToken
CancellationTokenA CancellationToken to observe while waiting for the task to complete.
Returns
- Task<IDbContextTransaction>
A task that represents the asynchronous operation. The task result contains the newly created transaction.
UseTransaction(DbTransaction)
Specifies an existing DbTransaction to be used for database operations.
IDbContextTransaction UseTransaction(DbTransaction transaction)
Parameters
transaction
DbTransactionThe transaction to be used.
Returns
- IDbContextTransaction
An instance of IDbTransaction that wraps the provided transaction.
UseTransaction(DbTransaction, Guid)
Specifies an existing DbTransaction to be used for database operations.
IDbContextTransaction UseTransaction(DbTransaction transaction, Guid transactionId)
Parameters
transaction
DbTransactionThe transaction to be used.
transactionId
GuidThe unique identifier for the transaction.
Returns
- IDbContextTransaction
An instance of IDbTransaction that wraps the provided transaction.
UseTransactionAsync(DbTransaction, Guid, CancellationToken)
Specifies an existing DbTransaction to be used for database operations.
Task<IDbContextTransaction> UseTransactionAsync(DbTransaction transaction, Guid transactionId, CancellationToken cancellationToken = default)
Parameters
transaction
DbTransactionThe transaction to be used.
transactionId
GuidThe unique identifier for the transaction.
cancellationToken
CancellationTokenA CancellationToken to observe while waiting for the task to complete.
Returns
- Task<IDbContextTransaction>
An instance of IDbTransaction that wraps the provided transaction.
UseTransactionAsync(DbTransaction, CancellationToken)
Specifies an existing DbTransaction to be used for database operations.
Task<IDbContextTransaction> UseTransactionAsync(DbTransaction transaction, CancellationToken cancellationToken = default)
Parameters
transaction
DbTransactionThe transaction to be used.
cancellationToken
CancellationTokenA CancellationToken to observe while waiting for the task to complete.
Returns
- Task<IDbContextTransaction>
An instance of IDbTransaction that wraps the provided transaction.