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