我需要一種方法來減少列表或計算「總計」。我有一堂課,讓我們稱之爲產品。 Prod包含4個值。一個是產品的名稱,ID,序列號和數量。基本上我有一個產品,但有兩個不同的序列號。所以,當我從我的查詢中得到我的數據時,我有兩個項目,我想將它們視爲單個項目。我該如何去使用LINQ或其他的東西(我不能對他們進行預告,還有更多的類成員,這需要一段時間,再加上看起來很糟糕)。我希望能夠使用2個實例併合並其序列號(而不是僅添加Serail1 - Serial 2)並一起計算數量。在列表中組合兩個項目
0
A
回答
0
使用join
運算符並將它們放在Tuple
中。然後你可以在元組上調用更多的LINQ或迭代它們。
var combinedProducts =
from product1 in products1
join product2 in products2 on product1.serial equals product2.serial
select Tuple.Create(product1, product2);
// Use LINQ to calculate a total
combinedProducts.Sum(combined => combined.Item1.count * combined.Item2.price);
// Or use foreach to iterate over the tuples
foreach (var combined in combinedProducts) {
Console.WriteLine("{0} and {1}", combined.Item1.name, combined.Item2.name);
}
1
我想你想要的是Linq分組功能(見GroupBy - Simple 3)。這應該給你一個序列號和他們的數量清單:
public void Linq42()
{
List<Prod> products = GetProductList();
var serialCombined =
from p in products
group p by p.SerialNumber into g
select new { SerialNumber = g.Key, Total = g.Count() };
}
相關問題
- 1. 結合項目兩個列表
- 2. Python從兩個列表合併項目
- 3. 列表的組合項目
- 4. 製作組合列表中的每個項目的項目
- 5. 在C++中組合兩個列表
- 6. 兩個列表組合
- 7. 給定列表中的項目組合
- 8. 將兩個列表框中的項目合併到第三個列表框中
- 9. python中兩個列表的組合
- 10. java中兩個列表的組合
- 11. 將兩個小數點列表組合在一個數組中
- 12. 在Eclipse中結合兩個Java項目
- 13. 組合兩個選項[列表[字符串]在斯卡拉
- 14. 在Bootstrap中,將兩個項目組合在一起
- 15. 組合框/列表框選定項目
- 16. 合併兩個列表,每個項目出現一次
- 17. Python-將兩個列表組合成一個列表列表
- 18. 合併兩個列表項到元組的列表中還包含指數
- 19. 合併兩個VB.Net項目
- 20. 合併兩個laravel項目
- 21. 合併兩個android項目
- 22. 合併兩個項目
- 23. 在SharePoint 2007中合併項目列表
- 24. 合併或合併兩個項目。兩個代表,兩個窗口
- 25. 在datagridview中組合兩列?
- 26. 合併兩個數組列表
- 27. .NET:組合兩個通用列表
- 28. 將兩個列表組合成csv
- 29. ReadOnlyList作爲兩個列表的組合
- 30. 合併兩個數組列表到一個TreeMap在java中
你可以舉個例子嗎?列表樣本的數據?未標記答案 – Kiquenet 2016-09-29 07:12:57