gpt4 book ai didi

C# 聚合列表中的属性

转载 作者:太空狗 更新时间:2023-10-29 18:14:45 25 4
gpt4 key购买 nike

我有一个如下所示的对象

public class SampleObject
{
public int MsfId { get; set; }
public List<string> PgId { get; set; }
public List<string> DcId { get; set; }
}

在上述聚合中,PgId 值按 MsfId 分组。 DcId 也是如此。

例如:

MsfId: 100
PgId: "abc"
DcId: "123"

MsfId: 100
PgId: "def"
DcId: "456"

MsfId: 100
PgId: "ghi"
DcId: "789"

MsfId: 101
PgId: "abc"
DcId: "123"

如何编写 LINQ 查询来聚合它并创建如下所示的 SampleObjects 列表?

MsfId: 100
PgId: "abc", "def", "ghi"
DcId: "123", "456", "789"

MsfId: 101
PgId: "abc"
DcId: "123"

最佳答案

尝试这样聚合:

var result = col.GroupBy(x => x.MsfId)
.Select(x => new SampleObject {
MsfId = x.Key,
PgCodes = x.Select(t=>t.PgId).ToList(),
DcCodes = x.Select(t=>t.DcId).ToList()
});

关于C# 聚合列表中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37562350/

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