目标:
如果有重复,则应将其合并为一个,例如,如果“_name: a”, _quantity: 3”和“_name: a”, _quantity: 6”应合并为“_name: a”, _quantity: 9”列表中与其他数据是否重复。
问题:我有一个包含大量数据的列表,我不知道如何将重复的数据合并到一个单元中+它不应该影响其他单元。如果可能的话,希望所有事情都发生在同一个列表中,而不创建更多列表来实现结果。
List<Sale> myList = GetAllSalesList()
public classs Sale
{
public string _name;
public string _quantity;
}
Run Code Online (Sandbox Code Playgroud)
像这样的东西?
var mergedList =
myList.GroupBy(x => x._name)
.Select(g => new Sale{_name = g.Key, _quantity = g.Sum(x => x._quantity)})
.ToList();
Run Code Online (Sandbox Code Playgroud)
编辑:
我刚刚注意到这_quantity是 a string,这是正确的吗?
如果是,请将使用 , 的代码更改Sum()为:
g.Sum(x => int.Parse(x._quantity)).ToString()
Run Code Online (Sandbox Code Playgroud)
当然,如果_quantity代表int...否则使用double或decimal等等...
| 归档时间: |
|
| 查看次数: |
3522 次 |
| 最近记录: |