gpt4 book ai didi

c# - 使用 linq 的 EF 对象列表到列表字典

转载 作者:行者123 更新时间:2023-11-30 15:40:33 25 4
gpt4 key购买 nike

我想将 EF 对象列表转换为字典。我在某种程度上完成了这一点,但有一个缺点:我无法弄清楚如何将多个对象添加到一个 key,value 中。基于该对象的属性对。

例如,假设我有一个 Entity Framework 对象 TblValue具有三个值 - ValueID, ValueNm, CodeID .

CodeID将在对象之间共享 - 有些可能相同,有些可能不同。

我想创建一个 Dictionary<TblCode, List<TblData>> . ( TblCode 来自 CodeID 。)基本上,我想创建这个项目列表的字典,其中每个列表由 CodeID 分隔和分组。 , 使用 LINQ。

我之前使用的 LINQ 语句可以正常工作,但它不会进行任何分组。这非常接近,还是 LINQ 不适合这个?会 foreach循环会更好吗?

var splitTimes = times.Cast<TblValue>().ToDictionary(o => tr.GetCode(o.CodeID));

澄清 - 我无法对值进行分组....我无法创建 Dictionary<TblCode, List<TblValue>> , 我只能创建一个 Dictionary<TblCode, TblValue>

最佳答案

需要先分组,再转字典。像那样:

var dictionary = tblValues
.GroupBy(table => table.CodeID)
.ToDictionary(values => values.Key);

如果您需要转换您的 key ,请在 GroupBy()ToDictionary()

中执行

关于c# - 使用 linq 的 EF 对象列表到列表字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9100403/

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