2009-07-27 6 views
13

linqのToLookupメソッドから返されたときにキーの順序が順序付けられていないことは間違いありませんが、の値はのままですか?私はどちらか一方の方法で書かれた文書を見つけることができません。linqとToLookup()で値の順序を保持する

答えて

8

ToLookup()の現在の実装では、実際には値の順番が保持されています(実装はLookup<TKey,TElement>.Grouping<TKey,TElement>.Add()を確認しています)。しかし、それはそのままでは保証されません。順序を保証するには、おそらくSelectwith-index overloadを使用して要素の元のインデックスを含めることをお勧めします。

1

私は彼らが見ていると思います。here. ILookupはIEnumerable<IGrouping<TKey, TElement>>から派生しています。私はその価値が順調にとどまることを保証していると信じています。

関連する問題