RelationalTransaction Klasse

Definition

Eine Transaktion für die Datenbank.

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)
Vererbung
RelationalTransaction
Implementiert

Hinweise

Instanzen dieser Klasse werden in der Regel von BeginTransaction() abgerufen und sind nicht für die direkte Erstellung in Ihrem Anwendungscode konzipiert.

Weitere Informationen und Beispiele finden Sie unter Transaktionen in EF Core .

Konstruktoren

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

Initialisiert eine neue Instanz der RelationalTransaction-Klasse.

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

Initialisiert eine neue Instanz der RelationalTransaction-Klasse.

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

Initialisiert eine neue Instanz der RelationalTransaction-Klasse.

RelationalTransaction(IRelationalConnection, DbTransaction, ILogger, Boolean)

Initialisiert eine neue Instanz der RelationalTransaction-Klasse.

Eigenschaften

Connection

Die Verbindung.

Logger

Die Protokollierung.

SupportsSavepoints

Ruft einen Wert ab, der angibt, ob diese IDbContextTransaction-Instanz Datenbanksicherungspunkte unterstützt. Wenn false, wird erwartet, dass die Methoden CreateSavepointAsync(String, CancellationToken), RollbackToSavepointAsync(String, CancellationToken) und ReleaseSavepointAsync(String, CancellationToken) sowie deren synchrone Entsprechungen NotSupportedException auslösen.

TransactionId

Eine Korrelations-ID, mit der diese Transaktion identifiziert und über mehrere Datenbankaufrufe hinweg korreliert werden kann.

Methoden

ClearTransaction()

Entfernen der zugrunde liegenden Transaktion aus der Verbindung

ClearTransactionAsync(CancellationToken)

Entfernen der zugrunde liegenden Transaktion aus der Verbindung

Commit()

Committ alle Änderungen, die in der aktuellen Transaktion an der Datenbank vorgenommen wurden.

CommitAsync(CancellationToken)

Committ alle Änderungen, die in der aktuellen Transaktion an der Datenbank vorgenommen wurden, asynchron.

CreateSavepoint(String)

Erstellt einen Speicherpunkt in der Transaktion. Dadurch kann für alle Befehle, die ausgeführt werden, nachdem der Sicherungspunkt festgelegt wurde, ein Rollback ausgeführt werden, sodass der Transaktionszustand so wiederhergestellt wird, wie er zum Zeitpunkt des Sicherungspunkts bestanden hat.

CreateSavepointAsync(String, CancellationToken)

Erstellt einen Speicherpunkt in der Transaktion. Dadurch kann für alle Befehle, die ausgeführt werden, nachdem der Sicherungspunkt festgelegt wurde, ein Rollback ausgeführt werden, sodass der Transaktionszustand so wiederhergestellt wird, wie er zum Zeitpunkt des Sicherungspunkts bestanden hat.

Dispose()

Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen.

DisposeAsync()

Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen.

GetCreateSavepointSql(String)

Bei der Implementierung in einem Anbieter, der Transaktionsspeicherpunkte unterstützt, sollte diese Methode eine SQL-Anweisung zurückgeben, die einen Speicherpunkt mit dem angegebenen Namen erstellt.

GetReleaseSavepointSql(String)

Bei der Implementierung in einem Anbieter, der Transaktionsspeicherpunkte unterstützt, sollte diese Methode eine SQL-Anweisung zurückgeben, die einen Speicherpunkt mit dem angegebenen Namen freigibt.

Wenn die Savepoint-Version nicht unterstützt wird und ReleaseSavepointAsync(String, CancellationToken) überschrieben werden sollte, ReleaseSavepoint(String) um nichts zu tun.

GetRollbackToSavepointSql(String)

Bei der Implementierung in einem Anbieter, der Transaktionsspeicherpunkte unterstützt, sollte diese Methode eine SQL-Anweisung zurückgeben, die einen Rollback für einen Speicherpunkt mit dem angegebenen Namen ausführt.

ReleaseSavepoint(String)

Löscht einen Sicherungspunkt, der zuvor in der aktuellen Transaktion definiert wurde. Dadurch kann das System einige Ressourcen zurückfordern, bevor die Transaktion endet.

ReleaseSavepointAsync(String, CancellationToken)

Löscht einen Sicherungspunkt, der zuvor in der aktuellen Transaktion definiert wurde. Dadurch kann das System einige Ressourcen zurückfordern, bevor die Transaktion endet.

Rollback()

Verwirft alle Änderungen, die in der aktuellen Transaktion an der Datenbank vorgenommen wurden.

RollbackAsync(CancellationToken)

Verwirft alle Änderungen an der Datenbank in der aktuellen Transaktion asynchron.

RollbackToSavepoint(String)

Führt einen Rollback für alle Befehle aus, die ausgeführt wurden, nachdem der angegebene Sicherungspunkt eingerichtet wurde.

RollbackToSavepointAsync(String, CancellationToken)

Führt einen Rollback für alle Befehle aus, die ausgeführt wurden, nachdem der angegebene Sicherungspunkt eingerichtet wurde.

Explizite Schnittstellenimplementierungen

IInfrastructure<DbTransaction>.Instance

Eine Transaktion für die Datenbank.

Erweiterungsmethoden

GetInfrastructure<T>(IInfrastructure<T>)

Ruft den Wert aus einer Eigenschaft ab, die mit IInfrastructure<T>ausgeblendet wird.

Diese Methode wird in der Regel von Datenbankanbietern (und anderen Erweiterungen) verwendet. Es wird im Allgemeinen nicht im Anwendungscode verwendet.

GetDbTransaction(IDbContextTransaction)

Ruft die zugrunde liegende DbTransaction für die angegebene Transaktion ab. Wird ausgelöst, wenn es sich bei der Zieldatenbank nicht um eine relationale Datenbank handelt, die verwendet DbTransaction.

Gilt für: