<PackageReference Include="System.ServiceModel.Primitives" Version="6.2.0" />

System.Collections.Generic.SynchronizedKeyedCollection<K, T>

public abstract class SynchronizedKeyedCollection<K, T> : SynchronizedCollection<T>
namespace System.Collections.Generic { public abstract class SynchronizedKeyedCollection<K, T> : SynchronizedCollection<T> { public T this[K key] { get; } protected IDictionary<K, T> Dictionary { get; } protected SynchronizedKeyedCollection(); protected SynchronizedKeyedCollection(object syncRoot); protected SynchronizedKeyedCollection(object syncRoot, IEqualityComparer<K> comparer); protected SynchronizedKeyedCollection(object syncRoot, IEqualityComparer<K> comparer, int dictionaryCreationThreshold); protected void ChangeItemKey(T item, K newKey); public bool Contains(K key); protected abstract K GetKeyForItem(T item); public bool Remove(K key); } }