Linq 如何按数据表分组和求和操作
这是我的数据表Linq 如何按数据表分组和求和操作,linq,group-by,sum,Linq,Group By,Sum,这是我的数据表 Id Article Lot Ordered Unit Shipment Difference 1 32207 21309 80 Case 80 0 2 32218 21309 70 Case 60 10 3 32237 22359 50 Case 50 0
Id Article Lot Ordered Unit Shipment Difference
1 32207 21309 80 Case 80 0
2 32218 21309 70 Case 60 10
3 32237 22359 50 Case 50 0
4 32255 24299 100 Case 100 0
5 32207 24299 110 Case 110 0
6 32218 21309 80 Case 75 5
7 32237 21309 60 Case 60 0
8 32255 21309 75 Case 75 0
我需要分组的文章和批次列,和总和数量列(订购,装运和差异)
预期结果将是:
Article Lot Ordered Unit Shipment Difference
32207 21309 80 Case 80 0
32218 21309 150 Case 135 15
32237 22359 50 Case 50 0
32255 24299 100 Case 100 0
32207 24299 110 Case 110 0
32237 21309 60 Case 60 0
32255 21309 75 Case 75 0
我希望使用Linq获得结果。
有人能帮我吗
非常感谢尝试将其转换为可枚举的,然后使用linq 已更新
from v in mytable
group v by new {v.Article,v.Lot} into g
select new
{
Article = g.Key.Article ,
Lot = g.Key.Lot ,
Ordered = g.Sum(X=>X.Ordered),
Unit = g.First(),
Shipment = g.Sum(X=>X.Shipment),
Difference = g.Sum(X=>X.Difference)
}
你试过什么?您可以通过AsEnumerable扩展方法将DataTable用作可枚举项。除此之外,请看一看关于可枚举方法(以及许多其他方法)的示例。您需要按文章和批次进行分组。