我有一个类型为 Link 的 Linq 对象数组,其中包含如下值:

new Link {SourceId = 1, TargetId=22223}
new Link {SourceId = 1, TargetId=2221223}
new Link {SourceId = 1, TargetId=222}
new Link {SourceId = 2, TargetId=26556}
new Link {SourceId = 2, TargetId=264}
new Link {SourceId = 2, TargetId=262}
new Link {SourceId = 2, TargetId=29}

class Link
{
    public int SourceId { get; set; }
    public int TargetId { get; set; }
}

我需要一个 LINQ 语句来输出包含以下内容的字典 Dictionary<int, List<int>>:

不同的 SourceId 作为键和与该键关联的 TargetId 列表作为值。

非常感谢。

最佳答案

var dic = links.GroupBy(x=>x.SourceID)
               .ToDictionary(x=> x.Key, x => x.Select(y=>y.TargetId).ToList());

关于c# - 需要简单的 linq,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10388609/

10-15 03:57