Bagikan melalui


IIdentityResolutionInterceptor Antarmuka

Definisi

Memungkinkan penyadapan konflik resolusi identitas ketika DbContext mulai melacak instans entitas baru.

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

Keterangan

DbContext hanya dapat melacak satu instans entitas dengan nilai kunci primer tertentu. Ini berarti beberapa instans entitas dengan nilai kunci yang sama harus diselesaikan ke satu instans. Pencegat jenis ini dapat digunakan untuk melakukan ini. Ini dipanggil dengan instans terlacak yang ada dan instans baru dan harus menerapkan nilai properti apa pun dan perubahan hubungan dari instans baru ke dalam instans yang ada. Instans baru kemudian dibuang.

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

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

Lihat Pencegat EF Core dan pelacakan perubahan EF Core untuk informasi dan contoh selengkapnya.

Metode

UpdateTrackedInstance(IdentityResolutionInterceptionData, EntityEntry, Object)

Dipanggil ketika DbContext mencoba melacak instans baru entitas dengan nilai kunci primer yang sama dengan instans yang sudah dilacak. Metode ini harus menerapkan nilai properti dan perubahan hubungan apa pun dari instans baru ke dalam instans yang ada. Instans baru kemudian dibuang.

Berlaku untuk