gpt4 book ai didi

c# - 如何将对象列表转换为二级字典?

转载 作者:行者123 更新时间:2023-12-02 22:32:47 24 4
gpt4 key购买 nike

我有一个客户对象列表(例如:列出客户)

 public class Customer
{
public int ID { get; set; }
public string City { get; set; }
public bool DidLive { get; set; }
}

我需要做的是将这个“客户”集合转换为 dictionary如下所示,

“字典 > ”其中外键是“ID”,内键是“城市”。

这可以使用 "GroupBy" 来完成吗?或 "ToDictionary" "IEnumerable<T>" 的扩展方法?

最佳答案

我在这里假设您有多个具有相同 Id 但具有不同城市的 Customer 对象(如果不是这种情况并且内部字典将始终包含一个项目,请使用@oleksii 的回答)。

var result = customers.GroupBy(c => c.Id)
.ToDictionary(group => group.Key,
group => group.ToDictionary(c => c.City,
c => c.DidLive));

当然,如果有多个具有相同 ID 城市的客户,这将引发异常。

关于c# - 如何将对象列表转换为二级字典?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11957066/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com