c#datatable转list实体类
时间: 2024-08-14 19:03:02 浏览: 67
在 C# 中,`DataTable` 是 `System.Data` 命名空间下的一个数据结构,它通常用于存储数据库查询结果或其他结构化数据。而将 `DataTable` 转换为 `List<T>`(其中 `T` 是你的实体类)可以方便地操作数据并利用集合框架的功能。
首先,你需要有一个对应的 Entity 类(例如名为 `YourEntity`),它的属性应该对应 `DataTable` 的列。假设 `YourEntity` 包含属性 `Column1`, `Column2`, 等等:
```csharp
public class YourEntity
{
public int Column1 { get; set; }
public string Column2 { get; set; }
// 其他属性...
}
```
然后,你可以通过以下步骤将 `DataTable` 转换为 `List<YourEntity>`:
```csharp
DataTable dataTable = ... // 初始化或从数据库获取的 DataTable
List<YourEntity> entityList = dataTable.AsEnumerable() // 获取所有行作为 IEnumerable
.Select(row => new YourEntity
{
Column1 = Convert.ToInt32(row["Column1"]), // 将 DataTable 列转换为正确的类型
Column2 = row["Column2"].ToString(),
// 对于每个属性做相应的转换
})
.ToList(); // 将 IEnumerable 转换为 List
```
阅读全文