List To DataTable
List To Datatable
Source
public static DataTable ToDataTable<T>(this IList<T> data)
{
    PropertyDescriptorCollection properties = TypeDescriptor.GetProperties(typeof(T));
    DataTable table = new DataTable();
    foreach (PropertyDescriptor prop in properties)
        table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);
    foreach (T item in data)
    {
        DataRow row = table.NewRow();
        foreach (PropertyDescriptor prop in properties)
            row[prop.Name] = prop.GetValue(item) ?? DBNull.Value;
        table.Rows.Add(row);
    }
    return table;
}
    Example
List<string> myList = New String[]{"a","b","c","d"}.ToList();
DataTable dt = new DataTable();
dt = myList.ToDataTable();
    Author: Keyur Panchal
Submitted on: 11 aug. 2015
Language: C#
Type: DataTable, C#, List
Views: 13549