Sprache

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
[System.Runtime.CompilerServices.Nullable(0)]
public class RelationalTransaction : IAsyncDisposable, 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>
[<System.Runtime.CompilerServices.Nullable(0)>]
type RelationalTransaction = class
    interface IDbContextTransaction
    interface IDisposable
    interface IAsyncDisposable
    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
Attribute
Implementiert

Hinweise

Instanzen dieser Klasse werden in der Regel abgerufen BeginTransaction() und sind nicht so konzipiert, dass sie direkt in Ihrem Anwendungscode erstellt werden.

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

Konstruktoren

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

Initialisiert eine neue Instanz der RelationalTransaction-Klasse.

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

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

Name Beschreibung
Connection

Die Verbindung.

Logger

Der Logger.

SupportsSavepoints

Ruft einen Wert ab, der angibt, ob diese IDbContextTransaction Instanz Datenbankspeicherpunkte unterstützt. Wenn false, die Methoden CreateSavepointAsync(String, CancellationToken)RollbackToSavepointAsync(String, CancellationToken) und ReleaseSavepointAsync(String, CancellationToken) ihre synchronen Entsprechungen voraussichtlich ausgelöst NotSupportedExceptionwerden.

TransactionId

Eine Korrelations-ID, mit der diese Transaktion identifiziert und in mehreren Datenbankaufrufen korreliert werden kann.

Methoden

Name Beschreibung
ClearTransaction()

Entfernen der zugrunde liegenden Transaktion aus der Verbindung

ClearTransactionAsync(CancellationToken)

Entfernen der zugrunde liegenden Transaktion aus der Verbindung

Commit()

Führt einen Commit für alle Änderungen aus, die an der Datenbank in der aktuellen Transaktion vorgenommen wurden.

CommitAsync(CancellationToken)

Führt einen Commit für alle Änderungen aus, die an der Datenbank in der aktuellen Transaktion asynchron vorgenommen wurden.

CreateSavepoint(String)

Erstellt einen Speicherpunkt in der Transaktion. Dadurch können alle Befehle ausgeführt werden, die ausgeführt werden, nachdem der Speicherpunkt eingerichtet wurde, zurückgesetzt werden, wodurch der Transaktionsstatus zum Zeitpunkt des Speicherpunkts wiederhergestellt wird.

CreateSavepointAsync(String, CancellationToken)

Erstellt einen Speicherpunkt in der Transaktion. Dadurch können alle Befehle ausgeführt werden, die ausgeführt werden, nachdem der Speicherpunkt eingerichtet wurde, zurückgesetzt werden, wodurch der Transaktionsstatus zum Zeitpunkt des Speicherpunkts wiederhergestellt wird.

Dispose()

Führt anwendungsdefinierte Aufgaben aus, die mit dem Freigeben, Freigeben oder Zurücksetzen nicht verwalteter Ressourcen verknüpft sind.

DisposeAsync()

Führt anwendungsdefinierte Aufgaben aus, die mit dem Freigeben, Freigeben oder Zurücksetzen nicht verwalteter Ressourcen verknüpft sind.

GetCreateSavepointSql(String)

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

GetReleaseSavepointSql(String)

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

Wenn savepoint release nicht unterstützt wird und ReleaseSavepointAsync(String, CancellationToken) sollte außer Kraft gesetzt werden, ReleaseSavepoint(String) um nichts zu tun.

GetRollbackToSavepointSql(String)

Wenn diese Methode in einem Anbieter implementiert wird, der Transaktionsspeicherpunkte unterstützt, sollte diese Methode eine SQL-Anweisung zurückgeben, die einen Speicherpunkt mit dem angegebenen Namen zurückgibt.

ReleaseSavepoint(String)

Zerstört einen zuvor in der aktuellen Transaktion definierten Speicherpunkt. Auf diese Weise kann das System einige Ressourcen zurückfordern, bevor die Transaktion endet.

ReleaseSavepointAsync(String, CancellationToken)

Zerstört einen zuvor in der aktuellen Transaktion definierten Speicherpunkt. Auf diese Weise kann das System einige Ressourcen zurückfordern, bevor die Transaktion endet.

Rollback()

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

RollbackAsync(CancellationToken)

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

RollbackToSavepoint(String)

Setzt alle Befehle zurück, die nach dem Festlegen des angegebenen Speicherpunkts ausgeführt wurden.

RollbackToSavepointAsync(String, CancellationToken)

Setzt alle Befehle zurück, die nach dem Festlegen des angegebenen Speicherpunkts ausgeführt wurden.

Explizite Schnittstellenimplementierungen

Name Beschreibung
IInfrastructure<DbTransaction>.Instance

Eine Transaktion für die Datenbank.

Erweiterungsmethoden

Name Beschreibung
GetDbTransaction(IDbContextTransaction)

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

GetInfrastructure<T>(IInfrastructure<T>)

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

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

Gilt für: