ISaveChangesInterceptor Arabirim

Tanım

Ve yöntemlerinin ele geçirilmesini sağlar DbContext.SaveChanges DbContext.SaveChangesAync .

Komut yakalayıcılar, SaveChanges çağrısının yürütülmesini görüntülemek, değiştirmek ya da bastırmak için kullanılabilir ve sonucu EF 'e döndürülmeden önce değiştirebilir.

Tüm yöntemleri uygulamadıysanız öğesinden devralmayı göz önünde bulundurun SaveChangesInterceptor .

AddInterceptors(IInterceptor[])Uygulama yakalayıcılar kaydetmek için kullanın.

Uzantılar, iç hizmet sağlayıcısına aynı zamanda kayıt yaptırıcılar de kaydedebilir. Hem eklenen hem de uygulama yakalayıcılar bulunursa, eklenen yakalayıcılar hizmet sağlayıcısından çözümlendikleri sırada çalıştırılır ve sonra uygulama yakalayıcılar en son çalıştırılır.

public interface ISaveChangesInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type ISaveChangesInterceptor = interface
    interface IInterceptor
Public Interface ISaveChangesInterceptor
Implements IInterceptor
Türetilmiş
Uygulamalar

Açıklamalar

Daha fazla bilgi için bkz. EF Core dinleyici .

Yöntemler

SaveChangesFailed(DbContextErrorEventData)

İçinde bir özel durum oluştuğunda çağırılır DbContext.SaveChanges .

SaveChangesFailedAsync(DbContextErrorEventData, CancellationToken)

İçinde bir özel durum oluştuğunda çağırılır DbContext.SaveChangesAsync .

SavedChanges(SaveChangesCompletedEventData, Int32)

Sonunda çağırılır DbContext.SaveChanges .

Bu yöntem, bir yakalayıcıyı ' de bir komutun oluşturulmasını gizlemediği takdirde çağrılır SavingChanges(DbContextEventData, InterceptionResult<Int32>) . Bu durumda, result sonucu tarafından döndürülür SavingChanges(DbContextEventData, InterceptionResult<Int32>) .

SavedChangesAsync(SaveChangesCompletedEventData, Int32, CancellationToken)

Sonunda çağırılır DbContext.SaveChangesAsync .

Bu yöntem, bir yakalayıcıyı ' de bir komutun oluşturulmasını gizlemediği takdirde çağrılır SavingChangesAsync(DbContextEventData, InterceptionResult<Int32>, CancellationToken) . Bu durumda, result sonucu tarafından döndürülür SavingChangesAsync(DbContextEventData, InterceptionResult<Int32>, CancellationToken) .

SavingChanges(DbContextEventData, InterceptionResult<Int32>)

Başlangıcında çağırılır DbContext.SaveChanges .

SavingChangesAsync(DbContextEventData, InterceptionResult<Int32>, CancellationToken)

Başlangıcında çağırılır DbContext.SaveChangesAsync .

Şunlara uygulanır