首页 > 信息 > 科技资讯 >

🌟 C中DataTable与List之间的转换方法 🌟

发布时间:2025-03-25 17:22:10来源:

在C开发中,`DataTable`和`List`是两种常用的数据结构。`DataTable`适合用于数据表的作,而`List`则更适合集合作。两者之间的相互转换可以提升代码的灵活性,尤其是在需要将数据库查询结果或集合数据进行灵活处理时。

首先,从`DataTable`到`List`的转换可以通过LINQ实现。例如:

```csharp

var list = dataTable.AsEnumerable()

.Select(row => new MyModel {

Id = row.Field("Id"),

Name = row.Field("Name")

}).ToList();

```

这段代码将`DataTable`中的每一行映射为一个对象,并存入`List`中。

反过来,从`List`到`DataTable`的转换也简单直观:

```csharp

public static DataTable ToDataTable(List items)

{

var table = new DataTable(typeof(T).Name);

var properties = typeof(T).GetProperties();

foreach (var prop in properties)

table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);

foreach (var item in items)

table.Rows.Add(properties.Select(p => p.GetValue(item)).ToArray());

return table;

}

```

这两种方法极大地提升了数据处理效率,无论是前端展示还是后端逻辑,都能游刃有余!💪

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。