我的项目中有一个键值对列表。我想搜索List<KeyValuePair<String,object>>并找到任何重复的键,并使用 C# lambda 表达式获取该键和值。有人知道怎么做吗?
这是我的示例代码
list = List<KeyValuePair<string, Object>>
Run Code Online (Sandbox Code Playgroud)
我需要搜索此列表并获取KeyValuePair<string, Object>具有重复键(字符串)的任何项目。
任何帮助将不胜感激
IEnumerable<IGrouping<string, KeyValuePair<string, object>>> duplicateKVPsByKey = list.GroupBy(kvp => kvp.Key).Where(g => g.Count() > 1);
Run Code Online (Sandbox Code Playgroud)
这将按键对 KVP 列表进行分组,然后将其过滤为仅包含大于 1 的 KVP 组。
从那里您可以遍历列表并查看每个重复的键并查看关联的对象。
这将打印出所有键和与它们关联的对象
foreach (var group in duplicateKVPsByKey)
{
Console.WriteLine(group.Key);
foreach (var kvp in group)
{
Console.WriteLine(kvp.Value.ToString());
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3982 次 |
| 最近记录: |