Compartilhar via


IIdentityResolutionInterceptor Interface

Definição

Permite a interceptação de conflitos de resolução de identidade quando o inicia o DbContext rastreamento de novas instâncias de entidade.

public interface IIdentityResolutionInterceptor : Microsoft.EntityFrameworkCore.Diagnostics.IInterceptor
type IIdentityResolutionInterceptor = interface
    interface IInterceptor
Public Interface IIdentityResolutionInterceptor
Implements IInterceptor
Derivado
Implementações

Comentários

Um DbContext só pode acompanhar uma instância de entidade com qualquer valor de chave primária fornecido. Isso significa que várias instâncias de uma entidade com o mesmo valor de chave devem ser resolvidas para uma única instância. Um interceptador desse tipo pode ser usado para fazer isso. Ele é chamado com a instância controlada existente e a nova instância e deve aplicar quaisquer valores de propriedade e alterações de relação da nova instância na instância existente. Em seguida, a nova instância é descartada.

Use AddInterceptors(IInterceptor[]) para registrar interceptadores de aplicativo.

As extensões também podem registrar interceptadores no provedor de serviços interno. Se forem encontrados interceptadores injetados e de aplicativo, os interceptadores injetados serão executados na ordem em que são resolvidos do provedor de serviços e, em seguida, os interceptadores de aplicativo serão executados por último.

Confira Interceptadores do EF Core e controle de alterações do EF Core para obter mais informações e exemplos.

Métodos

UpdateTrackedInstance(IdentityResolutionInterceptionData, EntityEntry, Object)

Chamado quando um DbContext tenta rastrear uma nova instância de uma entidade com o mesmo valor de chave primária que uma instância já rastreada. Esse método deve aplicar quaisquer valores de propriedade e alterações de relação da nova instância na instância existente. Em seguida, a nova instância é descartada.

Aplica-se a