次のように、階層データ ソースに対してクエリを実行します。
repository.LookupValue(IEnumerable<string> ascendants)
ascendants検索されるノードへのパスを表す文字列のリストです。
これらのルックアップの結果をキャッシュしたいと思います。を使うことを想定していたのですが、 を辞書のキーとしてDictionary<IEnumerable<string>, long>使うIEnumerable<string>と参照等価性が使われるようで、どうも苦手です。
もちろん、独自の型ラッピングIEnumerable<string>を定義してそのメソッドをオーバーライドすることもできます.Equalsが、それは極端に思えます。
キャッシュの問題に対するより簡単な解決策がありませんか? 誰でもアドバイスできますか?