1

子オブジェクトのリストを含むオブジェクトがあり、各オブジェクトには子のリストが含まれています。その第一世代の子供たちだけを使って、私はそれらすべてのリストをできるだけきれいにそして安く組み合わせたいと思っています。私は私が次のようなことをすることができることを知っています

    public List<T> UnifiedListOfTChildren<T>() 
    {
        List<T> newlist = new List<T>();
        foreach (childThing in myChildren)
        {
            newlist = newlist.Concat<T>(childThing.TChildren);
        }
        return newlist;
    }

しかし、私が見逃している、よりエレガントで安価なLINQメソッドはありますか?

編集私と同じ方法でこの質問にたどり着き、SelectManyを初めて使用する場合は、この質問の使用方法を視覚的に説明することを強くお勧めします。現在グーグルの結果でトップ近くに出てきますが、直接スキップする価値があります。

4

1 に答える 1

3
var newList = myChildren.SelectMany(c => c.TChildren);
于 2012-04-21T16:43:11.207 に答える