Share via


ObservableHashSet<T> 类

定义

实现实体框架对集合导航属性使用基于通知的更改跟踪所需的接口的哈希集。

public class ObservableHashSet<T> : System.Collections.Generic.ICollection<T>, System.Collections.Generic.IEnumerable<T>, System.Collections.Generic.IReadOnlyCollection<T>, System.Collections.Generic.ISet<T>, System.Collections.Specialized.INotifyCollectionChanged, System.ComponentModel.INotifyPropertyChanged, System.ComponentModel.INotifyPropertyChanging
type ObservableHashSet<'T> = class
    interface ISet<'T>
    interface ICollection<'T>
    interface seq<'T>
    interface IEnumerable
    interface IReadOnlyCollection<'T>
    interface INotifyCollectionChanged
    interface INotifyPropertyChanged
    interface INotifyPropertyChanging
Public Class ObservableHashSet(Of T)
Implements ICollection(Of T), IEnumerable(Of T), INotifyCollectionChanged, INotifyPropertyChanged, INotifyPropertyChanging, IReadOnlyCollection(Of T), ISet(Of T)

类型参数

T

哈希集中的元素类型。

继承
ObservableHashSet<T>
实现

注解

有关详细信息和示例 ,请参阅 EF Core 中跟踪实体的本地视图

构造函数

ObservableHashSet<T>()

初始化 ObservableHashSet<T> 类的一个新实例,该实例为空并使用集类型的默认相等比较器。

ObservableHashSet<T>(IEnumerable<T>)

初始化 ObservableHashSet<T> 类的一个新实例,该实例使用集类型的默认相等比较器,包含从指定的集合复制的元素,并且有足够的容量容纳所复制的这些元素。

ObservableHashSet<T>(IEnumerable<T>, IEqualityComparer<T>)

初始化 ObservableHashSet<T> 类的一个新实例,该实例使用集类型的指定相等比较器,包含从指定的集合复制的元素,并且有足够的容量容纳所复制的这些元素。

ObservableHashSet<T>(IEqualityComparer<T>)

初始化 ObservableHashSet<T> 类的一个新实例,该实例为空并使用集类型的指定相等比较器。

属性

Comparer

获取用于确定集中的值是否相等的 IEqualityComparer<T> 对象。

Count

获取哈希集中包含的元素数。

IsReadOnly

获取一个值,该值指示哈希集是否为只读。

方法

Add(T)

将指定的元素添加到哈希集。

Clear()

从哈希集中删除所有元素。

Contains(T)

确定哈希集对象是否包含指定的元素。

CopyTo(T[])

将哈希集的元素复制到数组。

CopyTo(T[], Int32)

从指定的数组索引开始,将哈希集的元素复制到数组。

CopyTo(T[], Int32, Int32)

从指定的数组索引开始,将哈希集的指定元素数复制到数组。

ExceptWith(IEnumerable<T>)

从哈希集中删除指定集合中的所有元素。

GetEnumerator()

返回一个循环访问哈希集的枚举器。

IntersectWith(IEnumerable<T>)

修改当前哈希集,以仅包含该对象和指定集合中存在的元素。

IsProperSubsetOf(IEnumerable<T>)

确定哈希集是否是指定集合的正确子集。

IsProperSupersetOf(IEnumerable<T>)

确定哈希集是否为指定集合的正确超集。

IsSubsetOf(IEnumerable<T>)

确定哈希集是否为指定集合的子集。

IsSupersetOf(IEnumerable<T>)

确定哈希集是否为指定集合的超集。

OnCollectionChanged(NotifyCollectionChangedEventArgs)

引发 CollectionChanged 事件。

OnPropertyChanged(PropertyChangedEventArgs)

引发 PropertyChanged 事件。

OnPropertyChanging(PropertyChangingEventArgs)

引发 PropertyChanging 事件。

Overlaps(IEnumerable<T>)

确定当前 System.Collections.Generic.HashSet'1 对象和指定的集合是否共享公共元素。

Remove(T)

从哈希集中删除指定的元素。

RemoveWhere(Predicate<T>)

从哈希集中删除与指定谓词定义的条件匹配的所有元素。

SetEquals(IEnumerable<T>)

确定哈希集和指定的集合是否包含相同的元素。

SymmetricExceptWith(IEnumerable<T>)

修改当前哈希集,以仅包含存在于该对象或指定集合中的元素,但不能同时包含两者。

TrimExcess()

将哈希集的容量设置为它包含的实际元素数,向上舍入到附近特定于实现的值。

UnionWith(IEnumerable<T>)

修改哈希集,以包含本身和/或指定集合中存在的所有元素。

事件

CollectionChanged

在哈希集的内容更改时发生。

PropertyChanged

当此哈希集的属性 ((如 Count) )更改时发生。

PropertyChanging

此哈希集的属性 ((如 Count) )更改时发生。

显式接口实现

ICollection<T>.Add(T)

实现实体框架对集合导航属性使用基于通知的更改跟踪所需的接口的哈希集。

IEnumerable.GetEnumerator()

实现实体框架对集合导航属性使用基于通知的更改跟踪所需的接口的哈希集。

IEnumerable<T>.GetEnumerator()

实现实体框架对集合导航属性使用基于通知的更改跟踪所需的接口的哈希集。

适用于