ValueComparer Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Momentaufnahme und den Vergleich von benutzerdefinierten Werten für CLR-Typen an, die beim Erstellen einer Momentaufnahme nicht mit Equals(Object, Object) und/oder ohne tiefe/strukturelle Kopie verglichen werden können. Arrays von Grundtypen erfordern z. B. beide, wenn Mutation erkannt werden soll.
[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
- Vererbung
-
ValueComparer
- Abgeleitet
- Attribute
- Implementiert
Hinweise
Snapshotting ist der Prozess zum Erstellen einer Kopie des Werts in einer Momentaufnahme, sodass sie später verglichen werden kann, um festzustellen, ob sie geändert wurde. Bei einigen Typen, z. B. Sammlungen, muss dies eine tiefe Kopie der Auflistung sein, anstatt nur eine flache Kopie des Verweises.
Weitere Informationen und Beispiele finden Sie unter EF Core-Werteabgleiche .
Konstruktoren
| Name | Beschreibung |
|---|---|
| ValueComparer(LambdaExpression, LambdaExpression, LambdaExpression) |
Erstellt ein neues ValueComparer mit den angegebenen Vergleichs- und Momentaufnahmeausdrücken. |
Felder
| Name | Beschreibung |
|---|---|
| BoolIdentity |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Sie kann ohne Vorherige Ankündigung geändert oder entfernt werden. Sie sollten sie nur direkt in Ihrem Code mit äußerster Vorsicht verwenden und wissen, dass dies zu Anwendungsfehlern bei der Aktualisierung auf eine neue Entity Framework Core-Version führen kann. |
| HashCodeAddMethod |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Sie kann ohne Vorherige Ankündigung geändert oder entfernt werden. Sie sollten sie nur direkt in Ihrem Code mit äußerster Vorsicht verwenden und wissen, dass dies zu Anwendungsfehlern bei der Aktualisierung auf eine neue Entity Framework Core-Version führen kann. |
| ToHashCodeMethod |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Sie kann ohne Vorherige Ankündigung geändert oder entfernt werden. Sie sollten sie nur direkt in Ihrem Code mit äußerster Vorsicht verwenden und wissen, dass dies zu Anwendungsfehlern bei der Aktualisierung auf eine neue Entity Framework Core-Version führen kann. |
Eigenschaften
| Name | Beschreibung |
|---|---|
| ConstructorExpression |
Der Ausdruck, der die Konstruktion dieses Objekts darstellt. |
| EqualsExpression |
Der Vergleichsausdruck. |
| HashCodeExpression |
Der Hashcodeausdruck. |
| ObjectEqualsExpression |
Der Objektvergleichsausdruck. |
| SnapshotExpression |
Der Momentaufnahmeausdruck. |
| Type |
Der Typ. |
Methoden
| Name | Beschreibung |
|---|---|
| Add(HashCode, Int32) |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Sie kann ohne Vorherige Ankündigung geändert oder entfernt werden. Sie sollten sie nur direkt in Ihrem Code mit äußerster Vorsicht verwenden und wissen, dass dies zu Anwendungsfehlern bei der Aktualisierung auf eine neue Entity Framework Core-Version führen kann. |
| CreateDefault(Type, Boolean) |
Erstellt einen Standardwert ValueComparer<T> für den angegebenen Typ. |
| CreateDefault<T>(Boolean) |
Erstellt einen Standardwert ValueComparer<T> für den angegebenen Typ. |
| Equals(Object, Object) |
Vergleicht die beiden Instanzen, um festzustellen, ob sie gleich sind. |
| ExtractEqualsBody(Expression, Expression) |
Verwendet EqualsExpression und ersetzt die beiden Parameter durch die angegebenen Ausdrücke und gibt den transformierten Text zurück. |
| ExtractHashCodeBody(Expression) |
Verwendet den HashCodeExpression Parameter und ersetzt den Parameter durch den angegebenen Ausdruck und gibt den transformierten Text zurück. |
| ExtractSnapshotBody(Expression) |
Verwendet den SnapshotExpression Parameter und ersetzt den Parameter durch den angegebenen Ausdruck und gibt den transformierten Text zurück. |
| GetGenericSnapshotMethod(Type) |
Dies ist eine interne API, die die Entity Framework Core-Infrastruktur unterstützt und nicht den gleichen Kompatibilitätsstandards wie öffentliche APIs unterliegt. Sie kann ohne Vorherige Ankündigung geändert oder entfernt werden. Sie sollten sie nur direkt in Ihrem Code mit äußerster Vorsicht verwenden und wissen, dass dies zu Anwendungsfehlern bei der Aktualisierung auf eine neue Entity Framework Core-Version führen kann. |
| GetHashCode(Object) |
Gibt den Hashcode für die angegebene Instanz zurück. |
| Snapshot(Object) |
Erstellt eine Momentaufnahme der angegebenen Instanz. |
Erweiterungsmethoden
| Name | Beschreibung |
|---|---|
| IsDefault(ValueComparer) |
Gibt zurück |