NET CORE listT 匿名类型按给定的字符串分组
首先,我们需要将匿名类型的List
以下是一个示例代码:
using System;
using System.Collections.Generic;
using System.Linq;
class Program
{
static void Main(string[] args)
{
// 匿名类型的List<T>
var anonymousList = new List<dynamic>
{
new { Name = "John", Group = "A" },
new { Name = "Jane", Group = "B" },
new { Name = "Bob", Group = "A" },
new { Name = "Alice", Group = "B" },
new { Name = "Tom", Group = "A" }
};
// 转换为自定义类对象列表
var customList = anonymousList.Select(item => new CustomClass
{
Name = item.Name,
Group = item.Group
}).ToList();
// 按给定的字符串属性分组
var groupedData = customList.GroupBy(item => item.Group);
// 输出分组结果
foreach (var group in groupedData)
{
Console.WriteLine("Group: " + group.Key);
foreach (var item in group)
{
Console.WriteLine("Name: " + item.Name);
}
Console.WriteLine();
}
Console.ReadLine();
}
}
class CustomClass
{
public string Name { get; set; }
public string Group { get; set; }
}
在上面的示例中,我们首先定义了一个匿名类型的List
请注意,由于匿名类型是在编译时创建的,因此我们无法直接在代码中引用匿名类型的属性。因此,我们需要先将其转换为自定义类对象列表,以便在后续的GroupBy操作中使用
原文地址: https://www.cveoy.top/t/topic/ibR6 著作权归作者所有。请勿转载和采集!