Linq_GroupBy 返回的类型IEnumerable<IGrouping<>>

你最终返回的还是Group之后的类型,key则是你像转换的实体类,而你其余的统计,就可以用普通值类型来代表。例如。


/// <summary>
/// GetTable 直接返回IGroup <key,value> 的方法
/// </summary>
/// <returns></returns>
public static IEnumerable<IGrouping<MachineAssets, int>> ReturnGroupBy()
{
  List<MachineAssets> dataList = CommonUtils.GetTable(null, true);
  //查询名称、类型、原价的相同类型的 进行合并
  var query = dataList.GroupBy(x => new { x.assetsName, x.assetsType, x.Original })
      .Where(g => g.Count() > 1)
        .Select(y => new { y.Key, count = y.Count() });
          return (IEnumerable<IGrouping<MachineAssets, int>>)query;
}

类型则为IEnumerable<IGrouping<MachineAssets, int>> 。返回表达式return (IEnumerable<IGrouping<MachineAssets, int>>)query;

原文地址:https://www.cnblogs.com/ZaraNet/p/14637863.html