Condividi tramite


RelationalTransaction Classe

Definizione

Transazione sul database.

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)
Ereditarietà
RelationalTransaction
Implementazioni

Commenti

Le istanze di questa classe vengono in genere ottenute da BeginTransaction() e non sono progettate per essere create direttamente nel codice dell'applicazione.

Per altre informazioni ed esempi , vedere Transazioni in EF Core .

Costruttori

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

Inizializza una nuova istanza della classe RelationalTransaction.

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

Inizializza una nuova istanza della classe RelationalTransaction.

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

Inizializza una nuova istanza della classe RelationalTransaction.

RelationalTransaction(IRelationalConnection, DbTransaction, ILogger, Boolean)

Inizializza una nuova istanza della classe RelationalTransaction.

Proprietà

Connection

Connessione.

Logger

Logger.

SupportsSavepoints

Ottiene un valore che indica se questa istanza di IDbContextTransaction supporta i punti di salvataggio del database. Se false, i metodi CreateSavepointAsync(String, CancellationToken), RollbackToSavepointAsync(String, CancellationToken) e ReleaseSavepointAsync(String, CancellationToken) nonché le relative controparti sincrone dovrebbero generare NotSupportedException.

TransactionId

ID di correlazione che consente di identificare e correlare questa transazione tra più chiamate di database.

Metodi

ClearTransaction()

Rimuovere la transazione sottostante dalla connessione

ClearTransactionAsync(CancellationToken)

Rimuovere la transazione sottostante dalla connessione

Commit()

Esegue il commit di tutte le modifiche apportate al database nella transazione corrente.

CommitAsync(CancellationToken)

Esegue il commit di tutte le modifiche apportate al database nella transazione corrente in modo asincrono.

CreateSavepoint(String)

Crea un punto di salvataggio nella transazione. In questo modo è possibile eseguire il rollback di tutti i comandi eseguiti dopo che è stato stabilito il punto di salvataggio, ripristinando lo stato della transazione al momento del punto di salvataggio.

CreateSavepointAsync(String, CancellationToken)

Crea un punto di salvataggio nella transazione. In questo modo è possibile eseguire il rollback di tutti i comandi eseguiti dopo che è stato stabilito il punto di salvataggio, ripristinando lo stato della transazione al momento del punto di salvataggio.

Dispose()

Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite.

DisposeAsync()

Esegue attività definite dall'applicazione, come rilasciare o reimpostare risorse non gestite.

GetCreateSavepointSql(String)

Se implementato in un provider che supporta i punti di salvataggio delle transazioni, questo metodo deve restituire un'istruzione SQL che crea un punto di salvataggio con il nome specificato.

GetReleaseSavepointSql(String)

Se implementato in un provider che supporta i punti di salvataggio delle transazioni, questo metodo deve restituire un'istruzione SQL che rilascia un punto di salvataggio con il nome specificato.

Se la versione del punto di salvataggio non è supportata ReleaseSavepoint(String) e ReleaseSavepointAsync(String, CancellationToken) deve essere sottoposta a override per non eseguire alcuna operazione.

GetRollbackToSavepointSql(String)

Se implementato in un provider che supporta i punti di salvataggio delle transazioni, questo metodo deve restituire un'istruzione SQL che esegue il rollback di un punto di salvataggio con il nome specificato.

ReleaseSavepoint(String)

Elimina definitivamente un punto di salvataggio definito nella transazione corrente. In questo modo il sistema può recuperare alcune risorse prima che la transazione termini.

ReleaseSavepointAsync(String, CancellationToken)

Elimina definitivamente un punto di salvataggio definito nella transazione corrente. In questo modo il sistema può recuperare alcune risorse prima che la transazione termini.

Rollback()

Rimuove tutte le modifiche apportate al database nella transazione corrente.

RollbackAsync(CancellationToken)

Elimina tutte le modifiche apportate al database nella transazione corrente in modo asincrono.

RollbackToSavepoint(String)

Esegue il rollback di tutti i comandi eseguiti dopo che è stato stabilito il punto di salvataggio specificato.

RollbackToSavepointAsync(String, CancellationToken)

Esegue il rollback di tutti i comandi eseguiti dopo che è stato stabilito il punto di salvataggio specificato.

Implementazioni dell'interfaccia esplicita

IInfrastructure<DbTransaction>.Instance

Transazione sul database.

Metodi di estensione

GetInfrastructure<T>(IInfrastructure<T>)

Ottiene il valore da una proprietà nascosta tramite IInfrastructure<T>.

Questo metodo viene in genere usato dai provider di database (e da altre estensioni). In genere non viene usato nel codice dell'applicazione.

GetDbTransaction(IDbContextTransaction)

Ottiene l'oggetto sottostante DbTransaction per la transazione specificata. Genera un'eccezione se il database di destinazione non è un database relazionale che usa DbTransaction.

Si applica a