Dil

ValueComparer Sınıf

Tanım

Anlık görüntü alırken ayrıntılı/yapısal bir kopyaya ihtiyaç duyan ve/veya ile Equals(Object, Object) karşılaştırılamayan CLR türleri için özel değer anlık görüntüsünü ve karşılaştırmasını belirtir. Örneğin, ilkel tür dizileri, mutasyon algılanacaksa her ikisini de gerektirir.

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

Açıklamalar

Anlık görüntü oluşturma, değerin bir kopyasını anlık görüntüde oluşturma işlemidir, böylece daha sonra değiştirilip değiştirilmediğini belirlemek için karşılaştırılabilir. Koleksiyonlar gibi bazı türler için, bunun yalnızca basit bir başvuru kopyası yerine koleksiyonun derin bir kopyası olması gerekir.

Daha fazla bilgi ve örnek için bkz. EF Core değer karşılaştırıcıları .

Oluşturucular

Veri Akışı Adı Description
ValueComparer(LambdaExpression, LambdaExpression, LambdaExpression)

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

Alanlar

Veri Akışı Adı Description
BoolIdentity

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

HashCodeAddMethod

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

ToHashCodeMethod

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

Özellikler

Veri Akışı Adı Description
ConstructorExpression

Bu nesnenin oluşturulmasını temsil eden ifade.

EqualsExpression

Karşılaştırma ifadesi.

HashCodeExpression

Karma kod ifadesi.

ObjectEqualsExpression

Nesne karşılaştırma ifadesi.

SnapshotExpression

Anlık görüntü ifadesi.

Type

Türü.

Yöntemler

Veri Akışı Adı Description
Add(HashCode, Int32)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

CreateDefault(Type, Boolean)

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

CreateDefault<T>(Boolean)

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

Equals(Object, Object)

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

ExtractEqualsBody(Expression, Expression)

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

ExtractHashCodeBody(Expression)

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

ExtractSnapshotBody(Expression)

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

GetGenericSnapshotMethod(Type)

Bu, Entity Framework Core altyapısını destekleyen ve genel API'ler ile aynı uyumluluk standartlarına tabi olmayan bir iç API'dir. Herhangi bir sürümde bildirimde bulunmaksızın değiştirilebilir veya kaldırılabilir. Bunu yalnızca kodunuzda son derece dikkatli bir şekilde kullanmanız ve bunu yapmanın yeni bir Entity Framework Core sürümüne güncelleştirme sırasında uygulama hatalarına neden olabileceğini bilmeniz gerekir.

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.

Uzantı Metotları

Veri Akışı Adı Description
IsDefault(ValueComparer)

Verilen ValueComparer varsayılan EF Core uygulamasıysa döndürürtrue.

Şunlara uygulanır