エラー報告中にクラッシュ データを収集するのに役立つ拡張メソッドを作成しました。このメソッドは、キーが常に一意であることを保証するように設計されています。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);
}
...
}