Теперь класс должен предоставить метод для возврата нового уникального ключа для добавляемого элемента. Вот и не могу найти решение. Я пытался прочитать о новой общей функции C#, связанной с метамфетамином, но для меня это не имеет никакого смысла.
Я ищу что-то вроде метода GetUniqueKey ниже:< /p>
Код: Выделить всё
// Restrict TKey to numbers or strings: https://stackoverflow.com/a/30660880
class MyCollection
where TObject : class
where TKey : notnull, IComparable, IConvertible, IEquatable
{
private Dictionary items;
public TKey GetUniqueKey()
{
if (TKey is INumber)
return items.Keys.Max() + 1;
if (TKey is string)
return Guid.NewGuid().ToString();
throw new NotSupportedException("Key type not supported.");
}
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... neric-type