首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用LINQ将具有相同值的多行列表连接成单行

可以通过使用GroupBy和Aggregate操作符来实现。

首先,使用GroupBy操作符将具有相同值的行分组。然后,使用Aggregate操作符将每个组中的行连接成单行。

以下是一个示例代码:

代码语言:txt
复制
using System;
using System.Linq;

public class Program
{
    public static void Main()
    {
        // 假设我们有一个包含多行数据的列表
        var rows = new[]
        {
            new { Name = "John", Age = 25 },
            new { Name = "Jane", Age = 30 },
            new { Name = "John", Age = 35 },
            new { Name = "Jane", Age = 40 }
        };

        // 使用LINQ将具有相同值的多行列表连接成单行
        var result = rows
            .GroupBy(row => row.Name) // 按照Name分组
            .Select(group => new
            {
                Name = group.Key,
                Ages = string.Join(", ", group.Select(row => row.Age)) // 将每个组中的Age连接成字符串
            });

        // 输出结果
        foreach (var item in result)
        {
            Console.WriteLine($"Name: {item.Name}, Ages: {item.Ages}");
        }
    }
}

输出结果:

代码语言:txt
复制
Name: John, Ages: 25, 35
Name: Jane, Ages: 30, 40

在这个示例中,我们使用LINQ将具有相同Name值的多行列表连接成单行。通过使用GroupBy操作符按照Name分组,然后使用Select操作符创建一个新的匿名类型对象,其中包含Name和Ages属性。Ages属性使用string.Join方法将每个组中的Age连接成一个字符串。

对于这个问题,腾讯云没有特定的产品或服务与之直接相关。但是,腾讯云提供了一系列云计算服务,如云服务器、云数据库、云存储等,可以帮助开发者构建和部署各种应用程序。您可以访问腾讯云官方网站(https://cloud.tencent.com/)了解更多信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券