Langue

ValueComparer<T> Classe

Définition

Spécifie la capture instantanée et la comparaison de valeurs personnalisées pour les types CLR qui ne peuvent pas être comparés et Equals(Object, Object) /ou nécessitent une copie approfondie lors de la prise d’un instantané. Par exemple, les tableaux de types primitifs nécessitent à la fois si la mutation doit être détectée.

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

Paramètres de type

T

Le type.

Héritage
ValueComparer<T>
Dérivé
Attributs
Implémente

Remarques

La capture instantanée est le processus de création d’une copie de la valeur dans un instantané afin qu’elle puisse être comparée ultérieurement pour déterminer si elle a changé. Pour certains types, tels que les collections, il doit s’agir d’une copie approfondie de la collection plutôt que d’une copie superficielle de la référence.

Pour plus d’informations et d’exemples, consultez les comparateurs de valeurs EF Core .

Constructeurs

Nom Description
ValueComparer<T>(Boolean)

Crée une nouvelle avec une ValueComparer<T> expression de comparaison par défaut et une copie superficielle pour l’instantané.

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

Crée une nouvelle ValueComparer<T> avec les expressions de comparaison et d’instantané données.

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

Crée une nouvelle ValueComparer<T> avec l’expression de comparaison donnée. Une copie superficielle sera utilisée pour l’instantané.

Propriétés

Nom Description
ConstructorExpression

Expression représentant la construction de cet objet.

Default

Valeur par défaut ValueComparer<T> pour T, en utilisant une copie superficielle pour les instantanés et ne favorisant IStructuralEquatablepas .

DefaultWithStructuralComparisons

Valeur par défaut ValueComparer<T> pour T, en faveur du IStructuralEquatable moment où le type l’implémente. Cela est généralement utilisé lorsque les tableaux d’octets agissent en tant que clés.

EqualsExpression

Expression de comparaison.

HashCodeExpression

Expression de code de hachage.

ObjectEqualsExpression

Expression de comparaison d’objets.

SnapshotExpression

Expression d’instantané.

Type

Le type.

Méthodes

Nom Description
CreateDefaultEqualsExpression()

Crée une expression pour l’égalité.

CreateDefaultHashCodeExpression(Boolean)

Crée une expression pour générer un code de hachage.

CreateDefaultSnapshotExpression(Boolean)

Crée une expression pour créer un instantané d’une valeur.

Equals(Object, Object)

Compare les deux instances pour déterminer si elles sont égales.

Equals(T, T)

Compare les deux instances pour déterminer si elles sont égales.

ExtractEqualsBody(Expression, Expression)

Prend EqualsExpression et remplace les deux paramètres par les expressions données, en retournant le corps transformé.

(Hérité de ValueComparer)
ExtractHashCodeBody(Expression)

Prend le HashCodeExpression paramètre et remplace le paramètre par l’expression donnée, retournant le corps transformé.

(Hérité de ValueComparer)
ExtractSnapshotBody(Expression)

Prend le SnapshotExpression paramètre et remplace le paramètre par l’expression donnée, retournant le corps transformé.

(Hérité de ValueComparer)
GetHashCode(Object)

Retourne le code de hachage de l’instance donnée.

GetHashCode(T)

Retourne le code de hachage de l’instance donnée.

Snapshot(Object)

Crée un instantané de l’instance donnée.

Snapshot(T)

Crée un instantané de l’instance donnée.

Méthodes d’extension

Nom Description
IsDefault(ValueComparer)

Retourne true si l’implémentation EF Core par ValueComparer défaut est donnée.

S’applique à