Jazyk

ValueComparer Třída

Definice

Určuje snímkování a porovnání vlastních hodnot pro typy CLR, které nelze při pořizování snímku porovnat Equals(Object, Object) nebo které potřebují hloubkovou nebo strukturální kopii. Například pole primitivních typů budou vyžadovat obojí, pokud bude zjištěna mutace.

[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
Dědičnost
ValueComparer
Odvozené
Atributy
Implementuje

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 hloubková kopie kolekce, nikoli jen mělká kopie odkazu.

Další informace a příklady najdete v porovnání hodnot EF Core .

Konstruktory

Název Description
ValueComparer(LambdaExpression, LambdaExpression, LambdaExpression)

Vytvoří nový ValueComparer s daným porovnáním a vytvářením snímků výrazů.

Pole

Název Description
BoolIdentity

Jedná se o interní rozhraní API, které podporuje infrastrukturu Entity Framework Core a nevztahuje se na stejné standardy kompatibility jako veřejná rozhraní API. Může se změnit nebo odebrat bez upozornění v jakékoli verzi. Měli byste ho používat přímo ve svém kódu s extrémní opatrností a vědět, že to může vést k selháním aplikace při aktualizaci na novou Entity Framework Core verzi.

HashCodeAddMethod

Jedná se o interní rozhraní API, které podporuje infrastrukturu Entity Framework Core a nevztahuje se na stejné standardy kompatibility jako veřejná rozhraní API. Může se změnit nebo odebrat bez upozornění v jakékoli verzi. Měli byste ho používat přímo ve svém kódu s extrémní opatrností a vědět, že to může vést k selháním aplikace při aktualizaci na novou Entity Framework Core verzi.

ToHashCodeMethod

Jedná se o interní rozhraní API, které podporuje infrastrukturu Entity Framework Core a nevztahuje se na stejné standardy kompatibility jako veřejná rozhraní API. Může se změnit nebo odebrat bez upozornění v jakékoli verzi. Měli byste ho používat přímo ve svém kódu s extrémní opatrností a vědět, že to může vést k selháním aplikace při aktualizaci na novou Entity Framework Core verzi.

Vlastnosti

Název Description
ConstructorExpression

Výraz představující konstrukci tohoto objektu.

EqualsExpression

Výraz porovnání.

HashCodeExpression

Výraz kódu hash.

ObjectEqualsExpression

Výraz porovnání objektů.

SnapshotExpression

Výraz snímku.

Type

Typ.

Metody

Název Description
Add(HashCode, Int32)

Jedná se o interní rozhraní API, které podporuje infrastrukturu Entity Framework Core a nevztahuje se na stejné standardy kompatibility jako veřejná rozhraní API. Může se změnit nebo odebrat bez upozornění v jakékoli verzi. Měli byste ho používat přímo ve svém kódu s extrémní opatrností a vědět, že to může vést k selháním aplikace při aktualizaci na novou Entity Framework Core verzi.

CreateDefault(Type, Boolean)

Vytvoří výchozí hodnotu ValueComparer<T> pro daný typ.

CreateDefault<T>(Boolean)

Vytvoří výchozí hodnotu ValueComparer<T> pro daný typ.

Equals(Object, Object)

Porovná tyto dvě instance a určí, jestli jsou stejné.

ExtractEqualsBody(Expression, Expression)

Vezme EqualsExpression a nahradí dva parametry danými výrazy a vrátí transformovaný text.

ExtractHashCodeBody(Expression)

HashCodeExpression Vezme a nahradí parametr daným výrazem a vrátí transformovaný text.

ExtractSnapshotBody(Expression)

SnapshotExpression Vezme a nahradí parametr daným výrazem a vrátí transformovaný text.

GetGenericSnapshotMethod(Type)

Jedná se o interní rozhraní API, které podporuje infrastrukturu Entity Framework Core a nevztahuje se na stejné standardy kompatibility jako veřejná rozhraní API. Může se změnit nebo odebrat bez upozornění v jakékoli verzi. Měli byste ho používat přímo ve svém kódu s extrémní opatrností a vědět, že to může vést k selháním aplikace při aktualizaci na novou Entity Framework Core verzi.

GetHashCode(Object)

Vrátí kód hash pro danou instanci.

Snapshot(Object)

Vytvoří snímek dané instance.

Metody rozšíření

Název Description
IsDefault(ValueComparer)

Vrátí true , pokud je daná ValueComparer implementace EF Core výchozí.

Platí pro