Condividi tramite


ValueComparer<T> Classe

Definizione

Specifica la creazione di snapshot e il confronto di valori personalizzati per i tipi CLR che non possono essere confrontati con Equals(Object, Object) e/o richiedono una copia completa durante la creazione di uno snapshot. Ad esempio, le matrici di tipi primitivi richiedono entrambe se la mutazione deve essere rilevata.

public class ValueComparer<T> : Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer, System.Collections.Generic.IEqualityComparer<T>
type ValueComparer<'T> = class
    inherit ValueComparer
    interface IEqualityComparer<'T>
Public Class ValueComparer(Of T)
Inherits ValueComparer
Implements IEqualityComparer(Of T)

Parametri di tipo

T

Tipo.

Ereditarietà
ValueComparer<T>
Derivato
Implementazioni

Commenti

Lo snapshot è il processo di creazione di una copia del valore in uno snapshot in modo che possa essere confrontato in un secondo momento per determinare se è stato modificato. Per alcuni tipi, ad esempio le raccolte, deve essere una copia completa della raccolta anziché semplicemente una copia superficiale del riferimento.

Per altre informazioni ed esempi , vedere Confronto di valori di EF Core .

Costruttori

ValueComparer<T>(Boolean)

Crea un nuovo ValueComparer<T> oggetto con un'espressione di confronto predefinita e una copia superficiale per lo snapshot.

ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>)

Crea un nuovo ValueComparer<T> oggetto con l'espressione di confronto specificata. Per lo snapshot verrà usata una copia superficiale.

ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>, Expression<Func<T,T>>)

Crea un nuovo ValueComparer<T> oggetto con le espressioni di confronto e snapshot specificati.

Proprietà

EqualsExpression

Espressione di confronto.

HashCodeExpression

Espressione di codice hash.

SnapshotExpression

Espressione snapshot.

Type

Tipo.

Metodi

CreateDefaultEqualsExpression()

Crea un'espressione per l'uguaglianza.

CreateDefaultHashCodeExpression(Boolean)

Crea un'espressione per la generazione di un codice hash.

CreateDefaultSnapshotExpression(Boolean)

Crea un'espressione per la creazione di uno snapshot di un valore.

Equals(Object, Object)

Confronta le due istanze per determinare se sono uguali.

Equals(T, T)

Confronta le due istanze per determinare se sono uguali.

ExtractEqualsBody(Expression, Expression)

Accetta EqualsExpression e sostituisce i due parametri con le espressioni indicate, restituendo il corpo trasformato.

(Ereditato da ValueComparer)
ExtractHashCodeBody(Expression)

HashCodeExpression Accetta e sostituisce il parametro con l'espressione specificata, restituendo il corpo trasformato.

(Ereditato da ValueComparer)
ExtractSnapshotBody(Expression)

SnapshotExpression Accetta e sostituisce il parametro con l'espressione specificata, restituendo il corpo trasformato.

(Ereditato da ValueComparer)
GetHashCode(Object)

Restituisce il codice hash per l'istanza specificata.

GetHashCode(T)

Restituisce il codice hash per l'istanza specificata.

Snapshot(Object)

Crea uno snapshot dell'istanza specificata.

Snapshot(T)

Crea uno snapshot dell'istanza specificata.

Metodi di estensione

IsDefault(ValueComparer)

Restituisce true se l'oggetto specificato ValueComparer è un'implementazione predefinita di EF Core.

Si applica a