【发布时间】:2019-07-10 04:47:32
【问题描述】:
假设我有一个班级列表
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public int Age { get; set; }
}
现在我需要将字典列表转换为
假设它为List<Dictionary<key, value>>PersonDict,下面是相同的每个索引的结构。键名应动态填充为 Person 类中的属性名称。
key : "Id", Value : Person.Id
key : "Name", Value : Person.Name
key : "Age", Value : Person.Age
谁能帮忙,我已经尝试过“for each”和“Parallel For each”循环,但它需要很多时间,我有 300 万条记录要转换并且需要几个小时。
【问题讨论】:
-
您可能需要查看Reflection。
-
How to convert class into Dictionary<string,string>? 的可能重复项。只需使用
Dictionary<string, object>而不是Dictionary<string, string> -
List<Dictionary<key, value>>PersonDict这不是一个有效的类型请具体说明,这是一个编码站点 -
你的问题不是很清楚,但是列表中有
ToDictionary方法。 -
@CodingYoshi ,
ToDictionaty()方法允许为集合的每个项目创建键值对。但是 OP 想要获取字典列表,其中包含原始集合项的所有属性的键值对。
标签: c# asp.net performance