Freigeben über


ValueComparer<T> Konstruktoren

Definition

Überlädt

ValueComparer<T>(Boolean)

Erstellt eine neue ValueComparer<T> mit einem Standardvergleichsausdruck und einer flachen Kopie für die Momentaufnahme.

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

Erstellt eine neue ValueComparer<T> mit dem angegebenen Vergleichsausdruck. Für die Momentaufnahme wird eine flache Kopie verwendet.

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

Erstellt eine neue ValueComparer<T> mit den angegebenen Vergleichs- und Momentaufnahmeausdrücken.

ValueComparer<T>(Boolean)

Erstellt eine neue ValueComparer<T> mit einem Standardvergleichsausdruck und einer flachen Kopie für die Momentaufnahme.

public ValueComparer (bool favorStructuralComparisons);
new Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T> : bool -> Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T>
Public Sub New (favorStructuralComparisons As Boolean)

Parameter

favorStructuralComparisons
Boolean

Wenn true, verwendet IStructuralEquatable EF, wenn der Typ es implementiert. Dies wird in der Regel verwendet, wenn Bytearrays als Schlüssel fungieren.

Gilt für:

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

Erstellt eine neue ValueComparer<T> mit dem angegebenen Vergleichsausdruck. Für die Momentaufnahme wird eine flache Kopie verwendet.

public ValueComparer (System.Linq.Expressions.Expression<Func<T,T,bool>> equalsExpression, System.Linq.Expressions.Expression<Func<T,int>> hashCodeExpression);
public ValueComparer (System.Linq.Expressions.Expression<Func<T?,T?,bool>> equalsExpression, System.Linq.Expressions.Expression<Func<T,int>> hashCodeExpression);
new Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T> : System.Linq.Expressions.Expression<Func<'T, 'T, bool>> * System.Linq.Expressions.Expression<Func<'T, int>> -> Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T>
Public Sub New (equalsExpression As Expression(Of Func(Of T, T, Boolean)), hashCodeExpression As Expression(Of Func(Of T, Integer)))

Parameter

equalsExpression
Expression<Func<T,T,Boolean>>

Der Vergleichsausdruck.

hashCodeExpression
Expression<Func<T,Int32>>

Der zugeordnete Hashcodegenerator.

Gilt für:

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

Erstellt eine neue ValueComparer<T> mit den angegebenen Vergleichs- und Momentaufnahmeausdrücken.

public ValueComparer (System.Linq.Expressions.Expression<Func<T,T,bool>> equalsExpression, System.Linq.Expressions.Expression<Func<T,int>> hashCodeExpression, System.Linq.Expressions.Expression<Func<T,T>> snapshotExpression);
public ValueComparer (System.Linq.Expressions.Expression<Func<T?,T?,bool>> equalsExpression, System.Linq.Expressions.Expression<Func<T,int>> hashCodeExpression, System.Linq.Expressions.Expression<Func<T,T>> snapshotExpression);
new Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T> : System.Linq.Expressions.Expression<Func<'T, 'T, bool>> * System.Linq.Expressions.Expression<Func<'T, int>> * System.Linq.Expressions.Expression<Func<'T, 'T>> -> Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T>
Public Sub New (equalsExpression As Expression(Of Func(Of T, T, Boolean)), hashCodeExpression As Expression(Of Func(Of T, Integer)), snapshotExpression As Expression(Of Func(Of T, T)))

Parameter

equalsExpression
Expression<Func<T,T,Boolean>>

Der Vergleichsausdruck.

hashCodeExpression
Expression<Func<T,Int32>>

Der zugeordnete Hashcodegenerator.

snapshotExpression
Expression<Func<T,T>>

Der Momentaufnahme Ausdruck.

Hinweise

Bei der Momentaufnahme wird eine Kopie des Werts in eine Momentaufnahme erstellt, sodass sie später verglichen werden kann, um festzustellen, ob er sich geändert hat. Bei einigen Typen, z. B. Auflistungen, muss dies eine tiefe Kopie der Auflistung sein und nicht nur eine flache Kopie des Verweises.

Gilt für: