Bagikan melalui


ISaveChangesInterceptor Antarmuka

Definisi

Memungkinkan penyadapan DbContext.SaveChanges metode dan DbContext.SaveChangesAync .

public interface ISaveChangesInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type ISaveChangesInterceptor = interface
    interface IInterceptor
Public Interface ISaveChangesInterceptor
Implements IInterceptor
Turunan
Penerapan

Keterangan

Pencegat SaveChanges dapat digunakan untuk melihat, mengubah, atau menekan eksekusi panggilan SaveChanges dan memodifikasi hasilnya sebelum dikembalikan ke EF.

Pertimbangkan untuk mewarisi dari SaveChangesInterceptor jika tidak menerapkan semua metode.

Gunakan AddInterceptors(IInterceptor[]) untuk mendaftarkan pencegat aplikasi.

Ekstensi juga dapat mendaftarkan pencegat di penyedia layanan internal. Jika pencegat disuntikkan dan aplikasi ditemukan, maka pencegat yang disuntikkan dijalankan dalam urutan diselesaikan dari penyedia layanan, dan kemudian pencegat aplikasi dijalankan terakhir.

Lihat Pencegat EF Core untuk informasi dan contoh selengkapnya.

Metode

SaveChangesCanceled(DbContextEventData)

Dipanggil ketika DbContext.SaveChanges dibatalkan.

SaveChangesCanceledAsync(DbContextEventData, CancellationToken)

Dipanggil ketika DbContext.SaveChangesAsync dibatalkan.

SaveChangesFailed(DbContextErrorEventData)

Dipanggil ketika pengecualian telah dilemparkan ke dalam DbContext.SaveChanges.

SaveChangesFailedAsync(DbContextErrorEventData, CancellationToken)

Dipanggil ketika pengecualian telah dilemparkan ke dalam DbContext.SaveChangesAsync.

SavedChanges(SaveChangesCompletedEventData, Int32)

Dipanggil di akhir DbContext.SaveChanges.

SavedChangesAsync(SaveChangesCompletedEventData, Int32, CancellationToken)

Dipanggil di akhir DbContext.SaveChangesAsync.

SavingChanges(DbContextEventData, InterceptionResult<Int32>)

Dipanggil pada awal DbContext.SaveChanges.

SavingChangesAsync(DbContextEventData, InterceptionResult<Int32>, CancellationToken)

Dipanggil pada awal DbContext.SaveChangesAsync.

ThrowingConcurrencyException(ConcurrencyExceptionEventData, InterceptionResult)

Dipanggil segera sebelum EF akan melempar DbUpdateConcurrencyException.

ThrowingConcurrencyExceptionAsync(ConcurrencyExceptionEventData, InterceptionResult, CancellationToken)

Dipanggil segera sebelum EF akan melempar DbUpdateConcurrencyException.

Berlaku untuk