Что такое коллекция эквивалент словаря в C#? (Чтобы сделать пользовательскую логику автоматически, когда добавить , удалить , и т. Д. ....
Код: Выделить всё
public class MyCustomDictionary : IDictionary
{
private readonly Dictionary _inner = new();
public void Add(TKey key, TValue value)
{
// Custom logic before adding
_inner.Add(key, value);
}
public bool Remove(TKey key)
{
// Custom logic before removing
return _inner.Remove(key);
}
}
Вы могли бы сказать, что это нормально, но тогда, почему коллекция вещь, если бы я мог просто повторно внедрить коллекцию , реализуя свой собственный пользовательский класс, реализующий Ilist ? KeyedCollection на самом деле не работает, как словарь , поскольку они представляют собой комбинацию линейного списка с хэштибельностью и, таким образом, имеют операцию по удалению O (n).
Подробнее здесь:
https://stackoverflow.com/questions/796 ... aries-in-c