我有一个IDictionary<string,int>
,其中包含类别和各个计数的不同列表,数据看起来像这样:
分类|计数
-------------------
A | 2
B | 2
Z | 2
A_B | 1个
A_B_C | 5
我正在寻找一个查询,该查询求和以常见字母/字符串开头的类别的总数,因此从上面寻找的结果如下:
分类|计数
-------------------
A | 8 B | 2
Z | 2
A_B | 6 A_B_C | 5
最佳答案
var d = new Dictionary<string, int>()
{
{ "A", 2 },
{ "B", 2 },
{ "Z", 2 },
{ "A_B", 1 },
{ "A_B_C", 5 },
};
var d2 = d.Select(kvp => new KeyValuePair<string, int>(
kvp.Key,
d.Where(k => k.Key.StartsWith(kvp.Key))
.Sum(k => k.Value)))
.ToDictionary(kvp => kvp.Key, kvp => kvp.Value);
关于c# - C#Linq IDictionary的总和查询,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5796303/