我编写了一个扩展方法来帮助在错误报告期间收集崩溃数据。此方法旨在确保密钥始终是唯一的。如果您有一些 try/catch 块,有时数据可能会重复。我在这里要相当容易,而不是超级最佳实践。
问题:如果密钥不是唯一的,则更改密钥。当我尝试以下方法时,我得到“无法从'string'转换为'TKey'”。有任何想法吗?
public static void AddUnique<TKey, TValue>(this System.Collections.IDictionary dictionary, TKey key, TValue value)
{
if(dictionary[key] != null)
{
var newKey = key.ToString() + "-";
AddUnique<TKey, TValue>(dictionary, newKey, value);
}
...
}