Sprache

IIdentityResolutionInterceptor Schnittstelle

Definition

Ermöglicht das Abfangen von Identitätsauflösungskonflikten, wenn die DbContext Nachverfolgung neuer Entitätsinstanzen beginnt.

public interface IIdentityResolutionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IIdentityResolutionInterceptor = interface
    interface IInterceptor
Public Interface IIdentityResolutionInterceptor
Implements IInterceptor
Abgeleitet
Implementiert

Hinweise

Ein DbContext kann nur eine Entitätsinstanz mit einem bestimmten Primärschlüsselwert nachverfolgen. Dies bedeutet, dass mehrere Instanzen einer Entität mit demselben Schlüsselwert in eine einzelne Instanz aufgelöst werden müssen. Dazu kann ein Interceptor dieses Typs verwendet werden. Sie wird mit der vorhandenen nachverfolgten Instanz und der neuen Instanz aufgerufen und muss alle Eigenschaftswerte und Beziehungsänderungen von der neuen Instanz auf die vorhandene Instanz anwenden. Die neue Instanz wird dann verworfen.

Wird AddInterceptors(IInterceptor[]) verwendet, um Anwendungsabschnitte zu registrieren.

Erweiterungen können auch Interceptors im internen Dienstanbieter registrieren. Wenn sowohl injizierte als auch Anwendungs-Interceptors gefunden werden, werden die injizierten Interceptors in der Reihenfolge ausgeführt, in der sie vom Dienstanbieter aufgelöst werden, und dann werden die Anwendungsabschnitte zuletzt ausgeführt.

Weitere Informationen und Beispiele finden Sie unter EF Core Interceptors und EF Core Change Tracking .

Methoden

Name Beschreibung
UpdateTrackedInstance(IdentityResolutionInterceptionData, EntityEntry, Object)

Wird aufgerufen, wenn versucht wird, eine DbContext neue Instanz einer Entität mit demselben Primärschlüsselwert wie eine bereits nachverfolgte Instanz nachzuverfolgen. Diese Methode muss alle Eigenschaftswerte und Beziehungsänderungen von der neuen Instanz auf die vorhandene Instanz anwenden. Die neue Instanz wird dann verworfen.

Gilt für: