ValueComparer<T> Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie la capture instantanée et la comparaison de valeurs personnalisées pour les types CLR qui ne peuvent pas être comparés à Equals(Object, Object) et/ou nécessitent une copie approfondie lors de la prise d’un instantané. Par exemple, les tableaux de types primitifs nécessitent les deux si une mutation doit être détectée.
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)
Paramètres de type
- T
Type.
- Héritage
- Dérivé
- 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 simple copie superficielle de la référence.
Pour plus d’informations et d’exemples, consultez Comparateurs de valeurs EF Core .
Constructeurs
ValueComparer<T>(Boolean) |
Crée un nouveau ValueComparer<T> avec une expression de comparaison par défaut et une copie superficielle pour le instantané. |
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>) |
Crée un nouveau ValueComparer<T> avec l’expression de comparaison donnée. Une copie superficielle sera utilisée pour le instantané. |
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>, Expression<Func<T,T>>) |
Crée un nouveau ValueComparer<T> avec les expressions de comparaison et de capture instantanée données. |
Propriétés
EqualsExpression |
Expression de comparaison. |
HashCodeExpression |
Expression de code de hachage. |
SnapshotExpression |
Expression instantané. |
Type |
Type. |
Méthodes
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 une 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 et remplace le paramètre par l’expression donnée, en retournant le corps transformé. (Hérité de ValueComparer) |
ExtractSnapshotBody(Expression) |
Prend le SnapshotExpression et remplace le paramètre par l’expression donnée, en retournant le corps transformé. (Hérité de ValueComparer) |
GetHashCode(Object) |
Retourne le code de hachage pour le instance donné. |
GetHashCode(T) |
Retourne le code de hachage pour le instance donné. |
Snapshot(Object) |
Crée une instantané du instance donné. |
Snapshot(T) |
Crée une instantané du instance donné. |
Méthodes d’extension
IsDefault(ValueComparer) |
Retourne |