首页 > 解决方案 > 在 LINQ 中将 IGrouping 转换为 IQueryable

问题描述

if (model.ConnectedToOtherProfilesId != 0)
{
      var fooGroup = fans.GroupBy(x => x.FanId)
                         .Where(x => x.Any(z => z.ProfileId == model.ConnectedToOtherProfilesId));

      var fooGroup2 = fooGroup.Where(grp => grp.Count() > 1);
}

我需要的是将fooGroup2[ IQueryable<IGrouping<int,PF>] 的结果放入粉丝中,即IQueryiable<PF>

像这样的东西:

fans = fooGroup2;

标签: c#linqigrouping

解决方案


你可以使用一个SelectMany.

//IQueryable<PF>
var fooGroup2 = fooGroup.Where(grp => grp.Count() > 1)
                        .SelectMany(pf => pf);

推荐阅读