[英]C# DataTable group and sum into New DataTable
我有一個這樣的數據表:
id itemcode uom rate qty smallest_qty location 001 Item001 KG 1000.00 1 1000 1001 002 Item001 G 1.00 200 200 1001 003 Item002 Pcs 1.00 10 10 1001 004 Item002 PKT 30.00 2 60 1001
我想像下面的表一樣分組到新表中:
itemcode location smallest_qty Item001 1001 1200 Item002 1001 70
但是我嘗試編譯以下內容以生成目標表,但失敗了。
DataTable dt_1 = dt.AsEnumerable()
.GroupBy(r => r.Field<String>("itemcode"),
r => r.Field<String>("location"))
.Select (g =>
{
var row = dt.NewRow();
row["itemcode"] = g.Key.itemcode;
row["location"] = g.Key.location;
row["smallest_qty"] = g.Sum(r => r.Field<Decimal>("smallest_qty"));
return row;
}).CopyToDataTable();
DataTable dt_1 = dt.AsEnumerable()
.Select(a => new {
itemcode = a.Field<String>("itemcode"),
location = a.Field<String>("location"),
smallest_qty = a.Field<Decimal>("smallest_qty")
})
.GroupBy(r => new{r.itemcode,r.location})
.Select(g =>{
var row = dt.NewRow();
row["itemcode"] = g.Key.itemcode;
row["location"] = g.Key.location;
row["smallest_qty"] = g.Sum(r => r.smallest_qty);
return row;
}).CopyToDataTable();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.