EF Group By嵌套元素并选择该元素的属性

时间:2015-04-17 14:04:54

标签: c# entity-framework group-by

我试图通过Compagne和Date分组RendezVous(对于每个Compagne,我有一个日期列表,每个日期都有RendezVous的计数)。
我的实体是这样的:

class RendezVous {
  // properties....
  Compagne Compagne { get; set; }
}
class Compagne {
  // properties
  string Nom { get; set; }

我的查询如下:

        public static IEnumerable GetProgression()
        {
            var list = dbContext.RendezVous.GroupBy(o => new
            {
                Compagne = o.Compagne,
                Date = o.DateCreation
            }).Select(g => new
            {
                Compagne = g.Key.Compagne.Nom,
                Date = g.Key.Date,
                Total = g.Count()
            }).OrderByDescending(k => k.Date).ToList();
            return list;
        }

在这种情况下,错误是:

Column 'dbo.Compagne.Nom' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.

当我进行GroupBy Compagne = Compagne.NomSelect Compagne = g.Key.Compagne.Nom时,它工作正常,但是我可能有一些具有相同Compagne.Name值的Compagne对象。 请帮忙

0 个答案:

没有答案