6

オブジェクトのリストがあります。すべてのオブジェクトには「名前」とその他のさまざまなものがあります。そのリストに一意の名前がないオブジェクトを除外したいと思います。

結果のすべてのグループを「Union()」して、オブジェクトのIEnumerableを返すことができるLINQステートメントはありますか?

好き

IEnumerable<MyObject> Results = (from x in Objects 
                                 group x by x.Name into g
                                 where g.Count() > 1
                                 select g)
                                 .COMBINE_OR_WHATEVER();

ありがとう!

4

2 に答える 2

11

はいあります。を使用できますSelectMany

IEnumerable<MyObject> Results = (from x in Objects 
                                 group x by x.Name into g
                                 where g.Count() > 1
                                 select g)
                                 .SelectMany(x => x);
于 2012-04-18T12:15:37.293 に答える
1

一意の名前を持つオブジェクトのみが必要だと思います(「そのリストに一意の名前がないオブジェクトを除外したい」):

var result = Objects.GroupBy(o => o.Name)
            .Where(grp => grp.Count() == 1)
            .SelectMany(grp => grp); 
于 2012-04-18T12:26:32.367 に答える