Dil

RelationalTransaction Sınıf

Tanım

Veritabanına karşı bir işlem.

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)
Devralma
RelationalTransaction
Özellikler
Uygulamalar

Açıklamalar

Bu sınıfın örnekleri genellikle öğesinden BeginTransaction() alınır ve uygulama kodunuzda doğrudan oluşturulacak şekilde tasarlanmamıştır.

Daha fazla bilgi ve örnek için bkz. EF Core'da İşlemler .

Oluşturucular

Veri Akışı Adı Description
RelationalTransaction(IRelationalConnection, DbTransaction, Guid, IDiagnosticsLogger<DbLoggerCategory.Database.Transaction>, Boolean, ISqlGenerationHelper)

RelationalTransaction sınıfının yeni bir örneğini başlatır.

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

RelationalTransaction sınıfının yeni bir örneğini başlatır.

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

RelationalTransaction sınıfının yeni bir örneğini başlatır.

RelationalTransaction(IRelationalConnection, DbTransaction, ILogger, Boolean)

RelationalTransaction sınıfının yeni bir örneğini başlatır.

Özellikler

Veri Akışı Adı Description
Connection

Bağlantı.

Logger

Günlükçü.

SupportsSavepoints

Bu IDbContextTransaction örneğin veritabanı kayıt noktalarını destekleyip desteklemediğini gösteren bir değer alır. isefalse, yöntemlerinin CreateSavepointAsync(String, CancellationToken)RollbackToSavepointAsync(String, CancellationToken) ve ReleaseSavepointAsync(String, CancellationToken) bunların zaman uyumlu karşılıklarının oluşturması NotSupportedExceptionbeklenir.

TransactionId

Bu işlemin birden çok veritabanı çağrısı arasında tanımlanmasına ve ilişkilendirilmesine olanak tanıyan bağıntı kimliği.

Yöntemler

Veri Akışı Adı Description
ClearTransaction()

Temel alınan işlemi bağlantıdan kaldırma

ClearTransactionAsync(CancellationToken)

Temel alınan işlemi bağlantıdan kaldırma

Commit()

Geçerli işlemde veritabanında yapılan tüm değişiklikleri işler.

CommitAsync(CancellationToken)

Geçerli işlemde veritabanında yapılan tüm değişiklikleri zaman uyumsuz olarak işler.

CreateSavepoint(String)

İşlemde bir kayıt noktası oluşturur. Bu, kayıt noktası oluşturulduktan sonra yürütülen tüm komutların geri alınmasına olanak tanır ve işlem durumunu kayıt noktası sırasındaki durumuna geri yükler.

CreateSavepointAsync(String, CancellationToken)

İşlemde bir kayıt noktası oluşturur. Bu, kayıt noktası oluşturulduktan sonra yürütülen tüm komutların geri alınmasına olanak tanır ve işlem durumunu kayıt noktası sırasındaki durumuna geri yükler.

Dispose()

Yönetilmeyen kaynakları serbest bırakma, serbest bırakma veya sıfırlama ile ilişkili uygulama tanımlı görevleri gerçekleştirir.

DisposeAsync()

Yönetilmeyen kaynakları serbest bırakma, serbest bırakma veya sıfırlama ile ilişkili uygulama tanımlı görevleri gerçekleştirir.

GetCreateSavepointSql(String)

İşlem kayıt noktalarını destekleyen bir sağlayıcıda uygulandığında, bu yöntem verilen ada sahip bir kayıt noktası oluşturan bir SQL deyimi döndürmelidir.

GetReleaseSavepointSql(String)

İşlem kayıt noktalarını destekleyen bir sağlayıcıda uygulandığında, bu yöntem verilen ada sahip bir kayıt noktası serbest bırakan bir SQL deyimi döndürmelidir.

Savepoint sürümü desteklenmiyorsa ReleaseSavepoint(String) ve ReleaseSavepointAsync(String, CancellationToken) hiçbir şey yapmak için geçersiz kılınmalıdır.

GetRollbackToSavepointSql(String)

İşlem kayıt noktalarını destekleyen bir sağlayıcıda uygulandığında, bu yöntem verilen adla bir kayıt noktasını geri alan bir SQL deyimi döndürmelidir.

ReleaseSavepoint(String)

Geçerli işlemde daha önce tanımlanmış bir kayıt noktasını yok eder. Bu, sistemin işlem sona ermeden önce bazı kaynakları geri kazanmasını sağlar.

ReleaseSavepointAsync(String, CancellationToken)

Geçerli işlemde daha önce tanımlanmış bir kayıt noktasını yok eder. Bu, sistemin işlem sona ermeden önce bazı kaynakları geri kazanmasını sağlar.

Rollback()

Geçerli işlemde veritabanında yapılan tüm değişiklikleri atar.

RollbackAsync(CancellationToken)

Geçerli işlemde veritabanında yapılan tüm değişiklikleri zaman uyumsuz olarak atar.

RollbackToSavepoint(String)

Belirtilen kayıt noktası oluşturulduktan sonra yürütülen tüm komutları geri alır.

RollbackToSavepointAsync(String, CancellationToken)

Belirtilen kayıt noktası oluşturulduktan sonra yürütülen tüm komutları geri alır.

Belirtik Arabirim Kullanımları

Veri Akışı Adı Description
IInfrastructure<DbTransaction>.Instance

Veritabanına karşı bir işlem.

Uzantı Metotları

Veri Akışı Adı Description
GetDbTransaction(IDbContextTransaction)

Verilen işlem için temel alınanı DbTransaction alır. Hedeflenen veritabanı kullanan DbTransactionilişkisel bir veritabanı değilse oluşturur.

GetInfrastructure<T>(IInfrastructure<T>)

kullanılarak IInfrastructure<T>gizlenen bir özellikten değerini alır.

Bu yöntem genellikle veritabanı sağlayıcıları (ve diğer uzantılar) tarafından kullanılır. Genellikle uygulama kodunda kullanılmaz.

Şunlara uygulanır