选择不在GroupBy中的列的值

时间:2014-10-13 10:51:54

标签: c# linq

我需要一个查询来选择数据未分组的列值。我必须按Vkn编号分组以获得InvoiceCount的总和,但是我想选择FirmName而不用它进行分组。

public Model1
{
    public int VKN {get; set;}
    public string FirmName {get; set;}
    public string {get; set;}
    public string InvoiceCount {get; set;}
}

List<Model1> temp = new List<Model1> { /*adding some value... */ };

var temp = from m in temp group by new { row.VKN, row.FirmName} into g
           select new { FirmName = g.Key.FirName,
                        VKN = g.Key.Vkn,
                        InvoiceCountSum = g.Sum(x => x.InvoiceCount),
                      }

1 个答案:

答案 0 :(得分:1)

您可以按row.VKN进行分组,并使用几乎所有聚合函数来获取其他未参与分组的字段,但前提是您关注分组集合的结果(例如,您肯定知道FirmName每个VKN)是唯一的:

FirmName = g.Min(x => x.FirmName)