IGrouping <int,customer =“”>不包含Points等的定义

时间:2019-01-18 00:46:50

标签: c# linq

我正在尝试将这些分组,使“点”的最大值首先显示,但这给了我这个错误:

  

IGrouping <int, Customer>不包含Points的定义,也找不到扩展方法Points接受类型为IGrouping <int, Customer>的第一个参数。您是否缺少using指令或程序集引用?

对此有任何帮助吗?谢谢你。

Customer result = db.Customer
            .GroupBy(i => i.ID)
            .OrderBy(i => i.Points)
            .SelectMany(g => g);



//From Customer.cs
partial class Customer : Person
{
    public int Points { get; set; }
}

//Note: ID is inherited from the abstract Person class

2 个答案:

答案 0 :(得分:0)

在我看来,您只想要这样的东西:

IEnumerable<Customer> result = db.Customer
    .OrderByDescending(i => i.Points);

如果您有多个具有相同键(GroupBy)的项目,则只需要ID

答案 1 :(得分:-1)

我不确定您要使用GroupBy做些什么。但是,语法应该是这样-

Customer result = db.Customer
            .GroupBy(i => i.ID)
            .SelectMany(g => g)
            .OrderBy(i => i.Points);

OrderBy之后移动SelectMany