【发布时间】:2015-06-18 21:19:55
【问题描述】:
我正在尝试对 IEnumerable 进行分组。但是,每当我尝试完成时,我都会不断收到错误消息。
Dim query As IEnumerable(Of CreditItem) = _
From credits In unprocessedCredits _
Group credits By unprocessedCreditsGrouped = _
New With {Key .Make = credits.Make, _
Key .Part = credits.PartNumber, _
Key .CustomerNumber = credits.CustomerNumber, _
Key .OrderNumber = credits.OrderNumber} _
Into Group _
Select New CreditItem With { _
.Make = unprocessedCreditsGrouped.Make, _
.Part = unprocessedCreditsGrouped.PartNumber, _
.CustomerNumber = unprocessedCreditsGrouped.CustomerNumber, _
.OrderNumber = unprocessedCreditsGrouped.OrderNumber _
})
我需要按多个属性分组,例如按品牌、零件编号、客户编号。 unprocessedCredits 还包含字段“数量”,我需要根据 group by 子句获取数量的总和。选择新 CreditItem 不起作用。获取一些未为指定参数指定的参数。
但是,我不知道我是否真的需要 select 语句,因为我真的想选择这个 ienumerable 中的所有内容。
不只是这些属性,但我认为 group by 不可能?
【问题讨论】:
-
您遇到什么错误?您的返回类型将是
IGrouping(Of AnoinymousType, Of CreditItem),除非您稍后有Select没有显示。 -
编辑了原始帖子以更清楚地反映。
标签: vb.net linq group-by ienumerable