c# - 使用 linq.. 将通用列表转换为数据表?

标签 c# linq linq-to-dataset

List<Employee> objEmpList = new List<Employee>();
    for (int i = 0; i < 5; i++)
    { 
        objEmpList.Add(new Employee(){ID=i, Name="aa" + i});
    }

我想使用 linq 或 lambda 表达式创建包含通用列表项作为行的表...该怎么做...?

最佳答案

使用CopyToDataTable扩大。参见 msdn 文章 How to: Implement CopyToDataTable Where the Generic Type T Is Not a DataRow

DataTable table = objEmpList.CopyToDataTable();

顺便说一句,这是创建员工列表的更简单方法:

Enumerable.Range(0,5)
          .Select(i => new Employee { ID = i, Name = "aa" + i })
          .ToList();

也考虑使用 NBuilder :

Builder<Employee>.CreateListOfSize(5).Build()

关于c# - 使用 linq.. 将通用列表转换为数据表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15004207/

相关文章:

c# - 在 lambda 表达式 C# 中使用字符串作为属性

c# - 为同一端点使用任何类型的内容类型

c# - 是否可以创建一个可以添加两个不同类的列表?

c# - RavenDB Map Reduce Transform 折叠不同的字符串列表

c# - 如何编写支持对象初始值设定项的自定义 DynamicObject 类

c# - 为什么 EnumerableRowCollection<DataRow>.Select() 不能这样编译?

c# - 如何使用 LINQ to DataSet 筛选集合

c# - 我应该如何测试从 DataReader 填充列表的方法?

c# - 请解释一下这个 C# LINQ 语句

.net - 如何将 LinQ 加入(类型化)数据集?