为了清楚起见,假设我们有学生和类(class),这是多对多的关系。
我有一个字典,其中键是学生 ID,而 Enumerable 是一个类的集合(假设我们只有 id ),我想将其恢复为 classId、学生的字典
有没有办法用 Linq 做到这一点?我可以想出一种方法来使用循环来执行此操作,但我确信有一种方法可以执行此操作。
最佳答案
var newDic = dic
.SelectMany(pair => pair.Value
.Select(val => new { Key = val, Value = pair.Key }))
.GroupBy(item => item.Key)
.ToDictionary(gr => gr.Key, gr => gr.Select(item => item.Value));
关于c# - 将 Dictionary<int, Enumerable> 转换为 Dictionary<int, Enumerable> 反转内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1324912/