次の方法で共有


ValueComparer クラス

定義

スナップショットを取得するときに、CLR 型と比較できない、またはディープ/構造コピーが必要な CLR 型のカスタム値のスナップショットと比較Equals(Object, Object)を指定します。 たとえば、プリミティブ型の配列では、ミューテーションを検出する場合は両方が必要になります。

public abstract class ValueComparer : System.Collections.IEqualityComparer
public abstract class ValueComparer : System.Collections.Generic.IEqualityComparer<object>, System.Collections.IEqualityComparer
type ValueComparer = class
    interface IEqualityComparer
type ValueComparer = class
    interface IEqualityComparer
    interface IEqualityComparer<obj>
Public MustInherit Class ValueComparer
Implements IEqualityComparer
Public MustInherit Class ValueComparer
Implements IEqualityComparer, IEqualityComparer(Of Object)
継承
ValueComparer
派生
実装

注釈

スナップショット作成は、値のコピーをスナップショットに作成するプロセスであるため、後で比較して変更されたかどうかを判断できます。 コレクションなどの一部の型では、これは参照の浅いコピーではなく、コレクションのディープ コピーである必要があります。

詳細と例については、「 EF Core 値比較子 」を参照してください。

コンストラクター

ValueComparer(LambdaExpression, LambdaExpression, LambdaExpression)

指定された比較式とスナップショット式を使用して新しい ValueComparer を作成します。

フィールド

BoolIdentity

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

HashCodeAddMethod

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

ToHashCodeMethod

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

プロパティ

EqualsExpression

比較式。

HashCodeExpression

ハッシュ コード式。

SnapshotExpression

スナップショット式。

Type

型。

メソッド

Add(HashCode, Int32)

これは Entity Framework Core インフラストラクチャをサポートする内部 API であり、パブリック API と同じ互換性標準の対象ではありません。 いかなるリリースでも予告なく変更または削除される場合があります。 コードで直接使用する場合は、細心の注意を払う必要があります。これを行うと、新しい Entity Framework Core リリースに更新するとアプリケーションエラーが発生する可能性があることを認識してください。

CreateDefault(Type, Boolean)

指定した型の既定値 ValueComparer<T> を作成します。

CreateDefault<T>(Boolean)

指定した型の既定値 ValueComparer<T> を作成します。

Equals(Object, Object)

2 つのインスタンスを比較して、それらが等しいかどうかを判断します。

ExtractEqualsBody(Expression, Expression)

2 つのパラメーターを受け取って EqualsExpression 指定された式に置き換え、変換された本文を返します。

ExtractHashCodeBody(Expression)

HashCodeExpressionを受け取り、 パラメーターを指定された式に置き換え、変換された本文を返します。

ExtractSnapshotBody(Expression)

SnapshotExpressionを受け取り、 パラメーターを指定された式に置き換え、変換された本文を返します。

GetHashCode(Object)

指定されたインスタンスのハッシュ コードを返します。

Snapshot(Object)

指定したインスタンスのスナップショットを作成します。

拡張メソッド

IsDefault(ValueComparer)

指定ValueComparerした true が既定の EF Core 実装である場合は を返します。

適用対象