Sdílet prostřednictvím


ValueComparer<T> Konstruktory

Definice

Přetížení

ValueComparer<T>(Boolean)

Vytvoří nový ValueComparer<T> s výchozím porovnávaným výrazem a mělkou kopií snímku.

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

Vytvoří nový ValueComparer<T> s daným porovnávaným výrazem. Pro snímek se použije mělká kopie.

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

Vytvoří nový ValueComparer<T> s danými výrazy porovnání a vytváření snímků.

ValueComparer<T>(Boolean)

Vytvoří nový ValueComparer<T> s výchozím porovnávaným výrazem a mělkou kopií snímku.

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

Parametry

favorStructuralComparisons
Boolean

Pokud true, ef použije IStructuralEquatable , pokud ho typ implementuje. To se obvykle používá, když pole bajtů fungují jako klíče.

Platí pro

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

Vytvoří nový ValueComparer<T> s daným porovnávaným výrazem. Pro snímek se použije mělká kopie.

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)))

Parametry

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

Výraz porovnání.

hashCodeExpression
Expression<Func<T,Int32>>

Přidružený generátor hash kódu.

Platí pro

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

Vytvoří nový ValueComparer<T> s danými výrazy porovnání a vytváření snímků.

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)))

Parametry

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

Výraz porovnání.

hashCodeExpression
Expression<Func<T,Int32>>

Přidružený generátor hash kódu.

snapshotExpression
Expression<Func<T,T>>

Výraz snapshot.

Poznámky

Vytváření snímků je proces vytvoření kopie hodnoty do snímku, aby bylo možné ji později porovnat a zjistit, jestli se změnila. U některých typů, jako jsou kolekce, to musí být spíše hluboká kopie kolekce než jen mělká kopie odkazu.

Platí pro