ValueComparer Sınıf

Tanım

Anlık görüntü almada derin/yapısal bir kopyaya ihtiyaç olan ve/veya ile karşılaştırılamayan CLR türleri için özel değer anlık görüntüsü oluşturma Equals(Object, Object) ve karşılaştırmayı belirtir. Örneğin, ilkel tür dizileri, herhangi bir öğe algılanırsa her ikisini de gerektirir.

Anlık görüntü oluşturma, değerin bir kopyasını anlık görüntüye oluşturma işlemidir, böylece daha sonra değiştir olup olmadığını belirlemek üzere karşılaştırabilirsiniz. Koleksiyonlar gibi bazı türler için bu, başvuru için basit bir kopya yerine koleksiyonun derin bir kopyası olması gerekir.

public abstract class ValueComparer : System.Collections.IEqualityComparer
public abstract class ValueComparer : System.Collections.Generic.IEqualityComparer<object>, System.Collections.IEqualityComparer
type ValueComparer = class
    interface IEqualityComparer
type ValueComparer = class
    interface IEqualityComparer
    interface IEqualityComparer<obj>
Public MustInherit Class ValueComparer
Implements IEqualityComparer
Public MustInherit Class ValueComparer
Implements IEqualityComparer, IEqualityComparer(Of Object)
Devralma
ValueComparer
Türetilmiş
Uygulamalar

Açıklamalar

Daha EF Core için bkz. değer karşılaştırıcıları.

Oluşturucular

ValueComparer(LambdaExpression, LambdaExpression, LambdaExpression)

Verilen karşılaştırma ve ValueComparer anlık görüntü oluşturma ifadeleriyle yeni bir oluşturur.

Özellikler

EqualsExpression

Karşılaştırma ifadesi.

HashCodeExpression

Karma kod ifadesi.

SnapshotExpression

Anlık görüntü ifadesi.

Anlık görüntü oluşturma, değerin bir kopyasını anlık görüntüye oluşturma işlemidir, böylece daha sonra değiştir olup olmadığını belirlemek üzere karşılaştırabilirsiniz. Koleksiyonlar gibi bazı türler için bu, başvuru için basit bir kopya yerine koleksiyonun derin bir kopyası olması gerekir.

Type

Tür.

Yöntemler

CreateDefault(Type, Boolean)

Verilen tür için ValueComparer<T> varsayılan bir oluşturur.

Equals(Object, Object)

Eşit olup olmadığını belirlemek için iki örneği karşılar.

ExtractEqualsBody(Expression, Expression)

İki EqualsExpression parametreyi alır ve verilen ifadelerle değiştirir ve dönüştürülmüş gövdeyi döndürerek.

ExtractHashCodeBody(Expression)

alır HashCodeExpression ve parametresini verilen ifadeyle değiştirir ve dönüştürülmüş gövdeyi döndürerek.

ExtractSnapshotBody(Expression)

alır SnapshotExpression ve parametresini verilen ifadeyle değiştirir ve dönüştürülmüş gövdeyi döndürerek.

GetHashCode(Object)

Verilen örneğin karma kodunu döndürür.

Snapshot(Object)

Verilen örneğin anlık görüntüsünü oluşturur.

Anlık görüntü oluşturma, değerin bir kopyasını anlık görüntüye oluşturma işlemidir, böylece daha sonra değiştir olup olmadığını belirlemek üzere karşılaştırabilirsiniz. Koleksiyonlar gibi bazı türler için bu, başvuru için basit bir kopya yerine koleksiyonun derin bir kopyası olması gerekir.

Uzantı Metotları

IsDefault(ValueComparer)

Verilen, true varsayılan bir uygulama EF Core ValueComparer döndürür.

Şunlara uygulanır