怎么把list转成datatable
时间: 2023-04-28 11:01:56 浏览: 184
list转换为dataTable
将List转换为DataTable可以通过以下步骤实现:
1. 创建一个新的DataTable对象。
2. 使用List中的第一个对象来确定DataTable的列名和数据类型。
3. 遍历List中的每个对象,并将其添加到DataTable中。
以下是示例代码:
```
List<MyObject> myList = new List<MyObject>();
// 填充List
DataTable dt = new DataTable();
if (myList.Count > )
{
// 使用第一个对象来确定列名和数据类型
PropertyInfo[] props = myList[].GetType().GetProperties();
foreach (PropertyInfo prop in props)
{
dt.Columns.Add(prop.Name, prop.PropertyType);
}
// 遍历List中的每个对象,并将其添加到DataTable中
foreach (MyObject obj in myList)
{
DataRow dr = dt.NewRow();
foreach (PropertyInfo prop in props)
{
dr[prop.Name] = prop.GetValue(obj, null);
}
dt.Rows.Add(dr);
}
}
```
在上面的示例中,MyObject是一个自定义类,它包含要转换为DataTable的数据。如果您的List包含的是基本数据类型(如int、string等),则可以直接将它们添加到DataTable中,而不需要使用反射来确定列名和数据类型。
阅读全文