Linq:选择按名称分组且计数等于 0 的所有项目

本文关键字:项目 选择 Linq | 更新日期: 2023-09-27 18:33:10

我有表格订单(名称,日期,价格)

  horse, 7.5.2012, 100
  cat, 14.5.2012, 50
  horse, 8.5.2012, 70,
  dog, 13.5.2012, 40

我想在星期一显示订单名称和价格总和。输出我想要的:

  horse, 100
  cat, 50
  dog, 0

但现在我只有这个:

  horse, 100
  cat, 50

使用此 LINQ 查询

  from c in orders
  where (int)c.date.DayOfWeek == this._monday
  group c by c.name into g
  select new {
    Name = g.Key,
    Price = g.Sum(c => c.Price)
  }

你能帮我吗,我必须改变什么才能得到我想要的输出,请问? :)

Linq:选择按名称分组且计数等于 0 的所有项目

先尝试分组,然后对星期一进行过滤

from c in orders  
group c by c.name into g
  select new {
    Name = g.Key,
    Price = g.Where(c => (int)c.date.DayOfWeek == this._monday).Sum(c => c.Price)
  }