【发布时间】:2013-12-11 11:45:23
【问题描述】:
我有这个实际工作的 lambda 表达式
var d = DateTime.Now.AddDays(-30);
return db.Orders
.Where(o => o.CreateDate > d)
.Join(db.OrderItems, o => o.OrderId, o => o.OrderId, (o, p) => new { Order = o, OrderItem = p })
.Join(db.Customers, o => o.Order.CustomerId, o => o.CustomerId, (o, p) => new { o.Order, o.OrderItem, Customer = p })
.Where(o => o.Order.Status > 3)
.GroupBy(o => o.Customer.CustomerId)
.Select(o => new CustomerMonthSale
{
CustomerId = o.Key,
Price = o.Sum(p => p.OrderItem.Price * p.OrderItem.Quantity),
//Name = o.Select(p => p.Customer.Name)
})
.OrderByDescending(o => o.Price)
.Take(10).ToList();
但我对这条注释行有疑问。我收到错误消息:
无法将类型“System.Collections.Generic.IEnumerable”隐式转换为“字符串”
为什么?我该如何解决这个问题?
【问题讨论】:
标签: c# join lambda group-by type-conversion