ValueComparer<T> 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
ValueComparer<T>(Boolean) |
ValueComparer<T>使用默认比较表达式和浅表副本为快照创建新的 。 |
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>) |
ValueComparer<T>使用给定的比较表达式创建新的 。 浅表副本将用于快照。 |
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>, Expression<Func<T,T>>) |
ValueComparer<T>使用给定的比较和快照表达式创建新的 。 |
ValueComparer<T>(Boolean)
ValueComparer<T>使用默认比较表达式和浅表副本为快照创建新的 。
public ValueComparer (bool favorStructuralComparisons);
new Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T> : bool -> Microsoft.EntityFrameworkCore.ChangeTracking.ValueComparer<'T>
Public Sub New (favorStructuralComparisons As Boolean)
参数
- favorStructuralComparisons
- Boolean
如果 true
为 ,则如果类型实现,EF 将使用 IStructuralEquatable 。 这通常在字节数组充当键时使用。
适用于
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>)
ValueComparer<T>使用给定的比较表达式创建新的 。 浅表副本将用于快照。
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)))
参数
- equalsExpression
- Expression<Func<T,T,Boolean>>
比较表达式。
- hashCodeExpression
- Expression<Func<T,Int32>>
关联的哈希代码生成器。
适用于
ValueComparer<T>(Expression<Func<T,T,Boolean>>, Expression<Func<T,Int32>>, Expression<Func<T,T>>)
ValueComparer<T>使用给定的比较和快照表达式创建新的 。
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)))
参数
- equalsExpression
- Expression<Func<T,T,Boolean>>
比较表达式。
- hashCodeExpression
- Expression<Func<T,Int32>>
关联的哈希代码生成器。
- snapshotExpression
- Expression<Func<T,T>>
快照表达式。
注解
快照是将值的副本创建到快照以便稍后进行比较以确定它是否已更改的过程。 对于某些类型(例如集合),这需要是集合的深层副本,而不仅仅是引用的浅表副本。