如何将通用列表转换为dataTable?

时间:2010-08-12 06:00:35

标签: c#

我有4个清单。我想将这些列表转换为带有4列的Datatable。每个列表分配到DataTable的相应列中。

List<string> list1;
List<string> list2;
List<string> list3;
// and 
List<string> list4;

这我希望将数据表转换为

列:List1 List2 List3 List4

有人可以告诉我Easy Solution吗?

1 个答案:

答案 0 :(得分:1)

没有尝试过,只是确保它构建,运行,并且似乎填充数据表正常。

        var dataTable = new DataTable();
        dataTable.Columns.Add("Col1", list1.GetType().GetGenericArguments().First());
        dataTable.Columns.Add("Col2", list2.GetType().GetGenericArguments().First());
        dataTable.Columns.Add("Col3", list3.GetType().GetGenericArguments().First());
        dataTable.Columns.Add("Col4", list4.GetType().GetGenericArguments().First());

        // assumes they all match on count
        for (int i = 0; i < list1.Count; i++)
        {
            dataTable.Rows.Add(list1[i], 
                               list2[i],
                               list3[i],
                               list4[i]);
        }