Condividi tramite


IIdentityResolutionInterceptor Interfaccia

Definizione

Consente l'intercettazione dei conflitti di risoluzione delle identità quando l'avvio DbContext del rilevamento di nuove istanze di entità.

public interface IIdentityResolutionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IIdentityResolutionInterceptor = interface
    interface IInterceptor
Public Interface IIdentityResolutionInterceptor
Implements IInterceptor
Derivato
Implementazioni

Commenti

Un DbContext oggetto può tenere traccia di un'istanza di entità con qualsiasi valore di chiave primaria specificato. Ciò significa che più istanze di un'entità con lo stesso valore della chiave devono essere risolte in una singola istanza. Un intercettatore di questo tipo può essere usato per eseguire questa operazione. Viene chiamato con l'istanza tracciata esistente e la nuova istanza e deve applicare tutti i valori delle proprietà e le modifiche alle relazioni dalla nuova istanza all'istanza esistente. La nuova istanza viene quindi eliminata.

Usare AddInterceptors(IInterceptor[]) per registrare gli intercettori dell'applicazione.

Le estensioni possono anche registrare gli intercettori nel provider di servizi interni. Se vengono trovati sia gli intercettori inseriti che l'applicazione, gli intercettori inseriti vengono eseguiti nell'ordine in cui vengono risolti dal provider di servizi e quindi gli intercettori dell'applicazione vengono eseguiti l'ultima volta.

Per altre informazioni ed esempi, vedere intercettori EF Core e rilevamento delle modifiche di EF Core .

Metodi

UpdateTrackedInstance(IdentityResolutionInterceptionData, EntityEntry, Object)

Chiamato quando un DbContext tentativo di tenere traccia di una nuova istanza di un'entità con lo stesso valore della chiave primaria di un'istanza già rilevata. Questo metodo deve applicare tutti i valori delle proprietà e le modifiche alle relazioni dalla nuova istanza all'istanza esistente. La nuova istanza viene quindi eliminata.

Si applica a